【GASで簡単自動化】Googleフォームの回答を複数人へメールで一斉通知する方法

みなさん、こんにちは。

Googleフォームはアンケートや問い合わせ窓口として非常に便利ですよね。回答が入力されたらすぐに内容を確認したいと思うのは当然のことです。

もちろん、Googleフォームには回答があった際にメールで通知する機能が標準で備わっています。しかし、この標準機能では通知を受け取れるのはフォームのオーナー(または編集者)一人だけ。

「チームや部署など、複数人でフォームを運営しているから、回答があったら全員に通知してほしい!」

そんなお悩みはありませんか?

今回は、そんな時に役立つ Google Apps Script (GAS) を使って、Googleフォームの回答内容を指定した複数のメールアドレスに一斉通知する方法を解説します。

 


 

GASとは?

 

Google Apps Script(GAS)は、Googleが提供するプログラミング環境です。

これを使うと、Gmail、スプレッドシート、ドキュメント、そして今回のGoogleフォームといったGoogleの各種サービスを自動化したり、連携させたりすることができます。少し難しそうに聞こえるかもしれませんが、今回はコードをコピー&ペーストするだけで実装できるので、ご安心ください。

 


 

設定手順

 

それでは、さっそく設定手順を見ていきましょう。

1. Googleフォームの準備

まず、通知設定をしたいGoogleフォームを開きます。まだ作成していない場合は、質問項目などを作成しておきましょう。

(注意点)標準のメール通知はオフでOK
GASで通知を設定する場合、Googleフォーム標準の通知機能(「回答」タブ → 「︙」→「新しい回答についてのメール通知を受け取る」)は、チェックを外しておくことをお勧めします。オンにしたままだと、GASからの通知と二重でメールが届くことになります。

2. Apps Scriptエディタを開く

Googleフォームの画面右上にある「」(その他のアイコン)をクリックし、「Apps Script」をクリックします。

Apps Script
Apps Scriptをクリック

すると、新しいタブでApps Scriptのエディタ画面が開きます。

3. スクリプトを貼り付ける

エディタ画面に最初から書かれているコード(function myFunction() { ... })はすべて削除し、以下のコードをそのまま貼り付けてください。

function SENDFORM(e) {
  var items = e.response.getItemResponses(); // イベントオブジェクトから回答を取得
  var msg = '';

  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'; // 質問と回答を整形し、改行コードを追加
  }

  // GmailAppを使ってメールを送信
  // 複数の宛先を指定する場合は、カンマ区切りで指定します。
  var recipients = '送信先のメールアドレス①,送信先のメールアドレス②,送信先のメールアドレス③';
  var subject = '【フォーム回答あり】メールの件名';
  
  GmailApp.sendEmail(recipients, subject, msg);
}
スクリプトを貼り付ける
スクリプトを貼り付ける

4. コードをカスタマイズする

貼り付けたコードの一部を、ご自身の環境に合わせて修正します。

  • '送信先のメールアドレス①,送信先のメールアドレス②,送信先のメールアドレス③' この部分を、通知を受け取りたい人のメールアドレスに変更します。複数ある場合は、'(シングルクォーテーション)で囲んだまま、,(カンマ)で区切って入力してください。1人だけの場合は、メールアドレスを1つだけ記述すればOKです。
  • '【フォーム回答あり】メールの件名' 実際に届くメールの件名です。分かりやすいように自由に変更してください。

修正が終わったら、エディタの上部にあるフロッピーディスクのアイコン(プロジェクトを保存) をクリックして、スクリプトを保存します。

5. トリガーを設定する

最後に、このスクリプトを「フォームが送信されたとき」に自動で実行するためのおまじない、「トリガー」を設定します。

  1. エディタの左側にある時計のアイコン(トリガー) をクリックします。
  2. 画面右下の「トリガーを追加」ボタンをクリックします。はじめてトリガーを作成する場合は、「新しいトリガーを作成します」をクリックしてください。
  3. 以下の通りに各項目を設定してください。
    • 実行する関数を選択: SENDFORM
    • 実行するデプロイを選択: Head
    • イベントのソースを選択: フォームから
    • イベントの種類を選択: フォーム送信時
  4. 設定が終わったら「保存」をクリックします。 (※初めて設定する際は、Googleアカウントへのアクセス許可を求める画面が表示されます。内容を確認し、「許可」を進めてください。)
トリガーの設定
トリガーの設定画面

 


 

設定完了!

 

お疲れ様でした!以上で設定はすべて完了です。

これからは、このGoogleフォームに新しい回答が送信されるたびに、先ほど設定したメールアドレスすべてに、回答内容が記載されたメールが自動で届くようになります。

特別な「デプロイ」作業も不要で、意外と簡単に設定できたのではないでしょうか。 この方法を使えば、チームでの情報共有がスムーズになり、対応漏れを防ぐことにも繋がります。ぜひ活用して、業務の効率化に役立ててください。

 

本日も最後までお読みいただきありがとうございました。

それでは、よりGoogleフォームライフを!

 


参考情報

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール