GoogleAppsScript(GAS)でGoogleフォームからメールの自動返信


概要

GoogleAppsScriptを使用して、Googleフォームからのお問い合わせに対して自動返信したいと思います。
基本的には、フォームに提出されたときにsubmitForm()関数が起動することを利用します。

手順

・スクリプトの起動

Googleフォームの場合、右上の三点リーダー部分からスクリプトを起動できます。
下記の「スクリプト エディタ…」を押します。

・メールの送信

メールの送信は、MailApp.sendEmail('メールアドレス', '件名', '本文');で行うことができます。
詳細は過去に書いた記事も参照してください。

今回は、お問い合わせ内容と解答の確認メールを送信します。
スクリプトエディタに以下のコードを打ってみてください。

index.html
function submitForm(e){
  // メール送信用
  var address = Session.getActiveUser().getEmail();
  var title = '[お問い合わせを受信しました]';
  var content = "下記の内容で、お問い合わせを受信しました。\n\n"

  // e(event)から、質問と解答を取得
  var itemResponses = e.response.getItemResponses();
  for (var i = 0; itemResponses.length; i++) {
    var itemResponse = itemResponses[i];
    var question = itemResponse.getItem().getTitle();
    var answer = itemResponse.getResponse();
    content += question
    content += ": "
    content += answer
    content += "\n"
  }
  GmailApp.sendEmail(address, title, content);
}

以上のコードを用意した上でGoogleフォームを送ってもらうと、
フォームの送信者に対して、Googleフォームの質問と解答を送ることができます。