Google フォームの回答送信を通知するいろんな方法
この記事はGoogle Workspace 標準機能 Advent Calendar 2022の19日目の記事です。
この記事を終えると、あと7日を切りました!
さみしいものですね。
この記事ではGmail での通知について解説しているので、
私の著書『Gmail の教科書2022』を2022年12月19日(月)17時から2022年12月24日(金) 16時まで無料にします。
Gmail の使い方を勉強してみたい、どんな便利な機能があるんだべか?とご興味ある方はぜひご活用ください。
ネタと体力が尽きそうなので、さっそく本題に入ります。
Google フォームに回答があったことをメール通知する方法
Google フォームに回答があったことをメール通知したい対象にはいくつかの種類があります。
フォームの回答者
設定メニューで指定できる。回答者のGoogle アカウントへのログイン必須
Google Apps Script で送信相手を指定して自動送信。※メールアドレスを正確に入力してもらう必要あり
フォーム作成者や関係者
回答を記録するGoogle スプレッドシートの「ツール」>「通知設定」から
Google Apps Script で送信相手を指定して自動送信。
という方法で実装できます。
フォームの回答者への回答内容のコピーの送信
フォームに回答してくれた人に、どのようにフォームを回答したのかをフォームの回答送信直後にメール送信する設定メニューがあります。
回答のコピーを回答者に送信 を「常に送信」とすると、回答者が回答を送信した直後に、回答内容を回答者自身のGmail に通知します。
この設定により、フォーム作成者によるGoogle Apps Script での実装など複雑な操作をすることなく、回答者に通知できます。
これで「送った、送ってない」というやりとりをなくすことができるかもしれませんね。
設定メニューによる回答内容のコピーによって送信されるメールの内容を編集することはできません。イベントへの参加申込フォームへの受付完了メールを丁寧に自動送信したいときには、Google Apps Script によって送信メールの件名、本文、回答内容を定義するとよいでしょう。
GAS による実装方法は、後述します。
フォーム作成者や関係者へのメール通知
Google フォームの回答を記録するGoogle スプレッドシートへの編集権限があるユーザーの操作により、フォームへの回答があったその瞬間に、Gmail で通知を送信できます。
Google スプレッドシートから「ツール」>「通知設定」>「通知を編集」をクリックして機能を設定できます。
「通知ルールの設定」から「ユーザーがフォームを送信したとき」>「メール - その都度」に指定して保存すると、フォームへの回答が送信されるたびに、設定をしたユーザーのGmail に通知が送信されます。
通知ルールの設定を保存後に、もう通知を受け取る必要がないとなった時には
通知ルールを編集 から「削除」の操作をすることで通知を解除できます。
プログラミングいらずで、標準機能によりフォームの回答を「フォーム送信者」や「フォームの作成者や関係者」にその都度通知することができます。
Google Apps Script でフォームの回答を通知する
Google フォームへの回答が記録されたことをトリガーとして起動するGoogle Apps Script によって、回答の内容を通知することもできます。
Google Apps Script でメール(Gmail)を送信するには、
送信先、件名、本文、などを指定する必要があります。
フォーム回答者のメールアドレスを正確に入力してもらったり、
フォーム作成者や関係者のメールアドレスを正確に定義できれば、Google Apps Script によって自由度の高いメールを送信できます。
Google フォームの回答を記録するGoogle スプレッドシートのファイルから
「拡張機能」>「App Script」をクリックすることでGoogle Apps Script の記述ができます。
Google Apps Script の編集画面で、メールを送信するGAS を記述すれば、
フォームの送信直後にフォームに記載された、フォーム作成者のメールアドレスや、
事前に定義した複数の関係者やグループアドレスなどにメールを送信できます。
Google Apps Script の使い方については詳しくは解説しませんが、例えばこんなスクリプトを使用するとメールの送信ができます。
function onFormSubmit(e) {
let TimeStamp = e.namedValues["タイムスタンプ"][0];
let Email = e.namedValues["メールアドレス"][0];
let Subject ="【自動返信】" + Email;
let Body = "フォーム送信日時:" + TimeStamp + "\n"; +
"メールアドレス:" + Email
GmailApp.sendEmail(Email, Subject, Body);
}
送信メールのヘッダー部分やフッター部分、件名などの共通して使用できる部分については、
Google スプレッドシートに「メールの仕様」というシートを作成して、
そのシート内に定義した「件名」「本文」部分をGAS で指定して利用すると、プログラミング未経験の運用担当者も件名や本文を修正することができたり、件名や本文のセルの編集履歴を表示することで、復元することが簡単にできるようになります。
まとめ
Google Workspace 標準機能 Advent Calendar 2022の19日目の記事でした。
Google フォームへの回答の送信状況がどのようになっているのかを、定期的に確認することは手間がかかります。フォームへの回答が送信された都度、Gmail で通知が送信され、そのメールから最新の回答やフォームにアクセスできるのはとても便利なことです。
フォーム回答者としても、自分が過去にフォームに対してどのように回答したのかを自分で記録や記憶しておくのではなく、フォームの送信内容が自動で通知されるのはとても便利です。
Google フォームの標準機能や、Google Apps Script などの拡張機能を活用して、フォーム運用者、回答者の利便性が向上するような使い方をしていきましょう。
この記事が気に入ったらサポートをしてみませんか?