Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

Googleフォームで回答すると自動メールが届きますよね。

今回はその自動メール通知の内容をGoogleAppsScript(GAS)で変更したいと思います。

GoogleAppsScript(GAS)はプログラム言語の1つで、難しそうに聞こえますが、プログラミング未経験の人でも出来るようにわかりやすく解説します。

今回したいことは、こんな感じです。

①Googleフォームに回答を送信

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

②回答内容を特定のメアドにメール通知する

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

それでは始めましょう!

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

まずはGoogleフォームを作っておいてくださいね。

それを前提にして解説を始めます。

①②右上の三点リーダーの「スクリプトエディタ」をクリック

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

③「コード.gs」の部分に、下記のコードを貼りつける

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

GoogleAppsScript(GAS)のコード
function sendform(e){
  var items = e.response.getItemResponses();
  var msg = 'Googleフォームに回答がありました。\n';
  msg += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'

  for (var i = 0; i < items.length; i++) {
    var item = items[i];
    var question = item.getItem().getTitle();
    var answer = item.getResponse();
    msg += question + ': ' + answer + '\n\n';
  }

  msg += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'

  GmailApp.sendEmail('xxxx@gmail.com', 'Googleフォームに回答がありました', msg);
}
詳しいコードの解説はあとからしますね。

④⑤「コード.gs」の部分に、下記のコードを貼りつける

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

⑥「フォーム送信時」に変更して「保存」をクリック

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

※トリガー保存時に「このアプリはGoogleで確認されていません」というエラーが出た場合は、次の章で対処法を解説しています。

⑦トリガーができていることを確認

Googleフォームのメール通知内容をGoogleAppsScript(GAS)で変更する方法!

これで設定は完了です!

GoogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示された場合の対処法

oogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示された場合の対処法

GoogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示されることがあります。

このエラーになった場合の対処法を解説しますね。

①「詳細」をクリック

GoogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示された場合の対処法

②「test(安全ではないページ)に移動」をクリック

GoogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示された場合の対処法

③「許可」をクリック

GoogleAppsScript(GAS)のトリガー保存時に「このアプリはGoogleで確認されていません」と表示された場合の対処法

この操作を行えば、「このアプリはGoogleで確認されていません」というエラーは表示されなくなりますので、ご安心を。

GoogleAppsScript(GAS)のコード解説

今回はGoogleフォームに回答があった場合の通知メールの内容を、こちらのようなコードで書きました。

GoogleAppsScript(GAS)のコード
function sendform(e){
  var items = e.response.getItemResponses();
  var msg = 'Googleフォームに回答がありました。\n';
  msg += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'

  for (var i = 0; i < items.length; i++) {
    var item = items[i];
    var question = item.getItem().getTitle();
    var answer = item.getResponse();
    msg += question + ': ' + answer + '\n\n';
  }

  msg += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'

  GmailApp.sendEmail('xxxx@gmail.com', 'Googleフォームに回答がありました', msg);
}

かんたんにコードを解説しておきますね。

GoogleAppsScript(GAS)のコード
var msg = 'Googleフォームに回答がありました。\n';

この「msg」という変数は、メール本文の内容となります。

GoogleAppsScript(GAS)のコード
msg += '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'

「+=」で「msg」という変数に内容を追加することができます。
プログラムの世界で「=」は代入となりますので、前に設定した「msg」の値は上書きされてしまいますので、ご注意を。

また「\n」は改行を表す文字コードととなります。
「\n\n」とすると1行の空行ができます。

GoogleAppsScript(GAS)のコード
var question = item.getItem().getTitle();
var answer = item.getResponse();

「question」という変数にはGoogleフォームで設定した質問文が、「answer」にはGoogleフォームで回答した内容が設定されています。

GoogleAppsScript(GAS)のコード
GmailApp.sendEmail('xxxx@gmail.com', 'Googleフォームに回答がありました', msg);

上のコードはメール送信をしています。

'xxxx@gmail.com'の部分はメールを送信したいメアドを、'Googleフォームに回答がありました'にはメールタイトルを設定してください。

まとめ

いかがでしたか?
Googleフォームのメール通知内容を変えるのは意外とかんたんなことが分かっていただけたら嬉しいです。

また別記事の「【5分で出来る】Googleフォームのメール通知を複数メアドに送信する方法」

・自分のメールアドレスにGoogleフォームに回答があったことが知りたい
・お客様のメールアドレスに自動返信メールを送信したい

を実現する方法を解説していますのでチェックしてみてくださいね。

【5分で出来る】Googleフォームのメール通知を複数メアドに送信する方法 【5分で出来る】Googleフォームのメール通知を複数メアドに送信する方法