【初心者OK】Googleフォームで指定のメールアドレスに通知を送る方法

標準機能ではできないグループアドレス宛など指定のメールアドレスに送る方法を説明します。

送信エラー「Exception: フォームのデータを取得できませんでした。しばらくしてからもう一度お試しください。」が発生した時にもリトライする仕組みとしました。

スクリプト Google Apps Script(以下、GAS)を用いた設定方法もコピペでできるように後半で説明しています。

ふぅたこ

簡単にできるように説明しますのでご安心ください

目次

通知を自分宛にメールを送る設定方法

自分だけに届けばいいよという人向け。

ノンプログラミングで設定できるので設定方法を紹介します。

1. Googleフォーム上からメール通知を設定する

  1. 作成したGoogleフォームの管理画面にある「回答」ページを開く。
  2. 右上にある点が縦に並んだ「・・・」をクリック。
  1. 上部にある「新しい回答についてのメール通知を受け取る」をクリック。
  2. 左側にチェックがつけばOKです。

これでメール通知が有効になり、フォームの入力が完了すると、自分のGoogleアカウントにメール通知が届きます。

2. 動作時通知の例

「概要を表示」をクリックすると、管理画面の回答ページに移動します。

通知を指定したメールアドレスに送る ①前準備

自分以外、グループアドレスなど指定したいという人向け。

プログラミングが必要なので設定方法を説明します。コピーと貼り付けで設定可能です!

Google Apps Script(以下、GAS)とはGoogleが開発しているプログラミング言語であり、Google Appsの拡張や、連携に活用できます。

1. スクリプトエディタを開く

  1. 作成したGoogleフォームの管理画面の、右上の点が縦に並んだ「・・・」 をクリック。
  2. 「<>スクリプト エディタ」を選択すると、コードが入力できる画面に移動します。

2. スクリプトエディタにコードを書く準備

  1. 元々書いてあるコードは不要ですので、すべて消去してください。

3. スクリプトコードを書く(ほぼコピー&ペースト)

  1. 以下のスクリプトをコピーします。
function sendform(e){

// エラーが起きた時にはリトライ
var maxRetries = 3;
var items;

for (var retry = 0; retry < maxRetries; retry++) {
  try {
    items = e.response.getItemResponses();
    break;
  } catch (error) {
    if (retry === maxRetries - 1) {
    throw error;
  }
  Utilities.sleep(1000);
  }
}

var msg = '';

// メール送信先 []は利用環境に合わせて置き換えましょう
// BCCが不要ならbcc: '[BCCメールアドレス]',を消しましょう
var admin = '[送信先メールアドレス]';
var options = {from: '[送信元メールアドレス]', bcc: '[BCCメールアドレス]', name: '[送信者名]'};

// 件名、フッター 利用環境に合わせて置き換えましょう
var subject = "[件名]"; 
var footer
= "------------------------------------------------------------\n\n"
+ "【フッター】\n"
+ "・メール受けた人が見るフッター1\n"
+ "・メール受けた人が見るフッター2\n";

// ボディ処理部分 変更しない
for (var i = 0; i < items.length; i++) {
var item = items[i];
var q = item.getItem().getTitle();
var a = item.getResponse();
msg += q + ': ' + a + '\n\n';
}

// メール送信 変更しない
msg += footer;
GmailApp.sendEmail(admin, subject, msg, options);

}
  1. スクリプトエディタにペーストしてください。
  2. 「プロジェクト保存」のアイコンをクリックし、コードの保存をします。

通知を指定したメールアドレスに送る ②スクリプト変更

1. 送信元と送信先と(BCC)を設定

23~24行目 説明

  • [送信先メールアドレス]は、送りたい宛先のメールアドレスに置き換えてください。
    例)'[送信先メールアドレス]’→hogehoge@fuutaco.com
  • [送信元メールアドレス]は、送信者として表示したいGoogleアカウントのメールアドレス
    (※自分のGoogleアカウント。もしくは権限があるGoogleアカウントじゃないとエラーになります。)
  • [BCCメールアドレス]は、BCCにしたいメールアドレスに置き換えてください。
  • [送信者名]は、送信者名として表示したいテキスト。
    例)'[送信者名]’→WEBおといあわせ

23~24行目 変更例

var admin = ‘hogehoge@fuutaco.com‘;
var options = {from: ‘otoiawase@fuutaco.com‘, name: ‘WEBおといあわせ‘};

ふぅたこ

変更例のように、BCCが不要であれば削除可能

2. 件名を設定

27行目 説明

  • [件名]は、メールの件名として表示したいテキスト。

27行目 変更例

var subject = “[件名]WEBおといあわせ“;

3. フッターを設定

28~32行目 説明

  • footerより下の+で始まっている部分はフッターに表示したいテキスト。

28~32行目 変更例

var footer
= “————————————————————\n\n”

“【フッター】\n”
+ “・メール受けた人が見るフッター1\n”
+ “・メール受けた人が見るフッター2\n”;

\n は改行という意味です

通知を指定したメールアドレスに送る ③送信設定

1. トリガーの設定

  1. 画面左側にある時計マークを選択。
  2. 右下にある青い「+トリガーを追加」をクリックしてください。
  1. 実行する関数を選択には「sendform」
  2. イベントの種類を選択には「フォーム送信時」
  3. エラー通知設定には「今すぐ通知を受け取る」
  4. 「保存」をクリック。

2. トリガー保存時にアカウントの確認やエラーが出たら許可

  1. 上記スクリプトで指定したGoogleアカウントのメールアドレスを選択してください。
  2. 「許可」をクリック。

ポップアップブロックが発生して「許可」が表示されない時があります。
ブラウザからポップアップとリダイレクトを許可してください。

3. 動作時通知の例

「Googleフォームの通知を自分宛にメールを送る設定方法」で解説したパターンとは違い、テキストで内容が届きます。

こちらの方がすぐに内容が確認できるので使いやすいです!

ふぅたこ

フォームも開きたい場合はfooterにリンクのURL入れておけば開けます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次