Google Form で送信した後に自動で返信メールを送る
仕組み
Google Form で入力したメールアドレス宛に、フォーム送信完了直後にそのメールアドレスにメールを送る。
Google Form に登録するとスプレッドシートにカラムが一行追加されるので、そのイベントを発火にメールを送る仕組み。
手順
- Google Form を作成。メールアドレス入力欄を作っておく。
- フォーム送信結果を集計するスプレッドシートを開く。(Google Form の設定から)
- スプレッドシートのスクリプトエディタで以下を追記
function autoreply() {
var address = "";
var sheet = SpreadsheetApp.getActiveSheet();
var row = sheet.getLastRow();
var column = sheet.getLastColumn();
var range = sheet.getDataRange();
for (var i = 1; i <= column; i++ ) {
// スプレッドシートの入力項目名
var item = range.getCell(1, i).getValue();
// スプレッドシートの入力値
var value = range.getCell(row, i).getValue();
// フォームの入力項目が「メールアドレス」の場合は、変数 address に入れる
if (item === "メールアドレス") {
address = value;
}
}
// 自動返信メールの件名
var title = "【申込完了】XXXXXX";
// 自動返信メールの本文 \n は改行
var body = "本文をここに!";
//宛名=address、件名=title、本文=bodyで、メールを送る
// GmailApp.sendEmail(address, title, body);
GmailApp.sendEmail(address, title, body, {
from:"hogehoge@gmail.com", name:"なまえ"
});
}
- スクリプトエディタの設定で [リソース > 現在のプロジェクトのトリガー] から [フォーム送信時] に [autoreply] 関数を実行するように設定。