GoogleフォームからGoogle Apps Script(GAS)で自動返信メールを送信するスクリプトやオプションについて

  1. Google Apps Script(GAS)のメール送信で指定できるオプション
  2. GoogleフォームにGASを登録する手順
  3. Googleフォームからメールを送信するGAS
  4. Google Apps Script(GAS)で送信するメールの数に上限あり

Googleフォームから送信された時、通常ではフォームを作成したアカウントのGmailに通知が届きますが、今回はGoogleフォームから送信された時にGmailから「 指定したメールアドレスにオリジナルのメッセージを送信する方法 」についてご紹介。

送信処理は、GmailAppの「sendEmail」を使用します。
sendEmailの詳細は、Google Workspaceのリファレンスも合わせてご確認ください。

sendEmail(recipient, subject, body)
https://developers.google.com/apps-script/reference/gmail/gmail-app?hl=ja#sendEmail(String,String,String)

Google Apps Script(GAS)のメール送信で指定できるオプション

GASでメール送信する時に、様々なオプションが設定できます。
※以下はオプションの一部です。

プロパティ名 オプションの内容
name メールの差出人で表示される名前
cc CCで使用するメールアドレスを指定します。
bcc BCCで使用するメールアドレスを指定します。
replyTo メールを受信した人が返信する時に使用されるメールアドレスを指定します。

GoogleフォームにGASを登録する手順

先にGoogleフォームにGASを反映する流れを説明します。
実行できるサンプルスクリプトもあるのでお試しください。

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

Googleフォームを開いたら、画面右上にの赤枠にあるボタンを押してメニューを開きます。
その中の「スクリプトエディタ」を選択します。

(2)スクリプトを挿入

GASのエディタを開いたら、メールを送信するスクリプトを書き保存します。
関数名は「 mail_sender 」とします。(スクリプトは後述

(3)トリガーを設定

Googleフォームがデータ送信されたときにGASでメールを送信したいので「トリガー」を設定します。
Google Apps Script(GAS)のエディタ左にあるメニューの中から「トリガー」を選択。

トリガーを追加する画面が表示されるので、「関数名」に今回作成したGASの関数名「mail_sender」を選択、「イベントの書類を選択」の項目で「フォーム送信時」を選択したら保存します。これでフォーム送信時にトリガーが発動してGASが実行されるようになります。

Googleフォームからメールを送信するGAS

Googleフォームから送信された時に指定されたメールアドレスに送信するGoogle Apps Script(GAS)です。
本文にはGoogleフォームの質問と入力された回答が入りますが、オリジナルの文章も追加できるので、あとはお好みでテキストを追加ていきましょう。

function mail_test(e){
  var temp = '';

  // Googleフォームのデータを整形して temp に格納
  var items = e.response.getItemResponses();
  for (var i=0; i < items.length; i++) {
    let item = items[i];
    let question = item.getItem().getTitle();
    let ans = item.getResponse();
    temp += '● ' + question + '\n' + ans + '\n\n';
  }

  const mail_subject = 'メールタイトル。'; // メールの件名
  var mail_message = '○ ○ ○のフォームから申し込みがありました。'+ '\n' + temp; // メールの本文

  // メールのオプション設定
  const mail_name = '名前が入ります'; // 送信者の名前
  const mail_address = 'send1***@domain_name.xxxxx'; // 送信先のメールアドレス
  const mail_reply = 'send2***@domain_name.xxxxx'; // 
  const mail_options = { name: mail_name, replyTo: mail_reply };

  GmailApp.sendEmail( mail_address, mail_subject, mail_message, mail_options ); // メール送信
}

Google Apps Script(GAS)で送信するメールの数に上限あり

Google Apps Script(GAS)で送信するメールは、1日に送信できる数の上限があるので注意。
無料アカウントの場合、1日に送信できるメールの数は「100通」です。
詳細は、Google Workspaceのページをご覧ください。

Google サービスの割り当て
https://developers.google.com/apps-script/guides/services/quotas?hl=ja

MovableType/WordPressを使ったホームページ制作、機能追加や設置代行などの改修、システム開発、サイトの保守を手掛けております。


アナタが実現させたい機能、やりたい事をお聞かせいただけませんか? そのイメージを一緒に実現しましょう!
お問い合わせは以下のページから!!

やまライダーのサイトへ

書いた人:やまライダー

やまライダーです。仙台市でブロガー兼システム寄りのWebディレクターとして働きながら嫁と一緒に子育て奮闘中!
タスク管理ツール「Todoist」でガントチャートが作成ができる補助ツール「Todoist ガントチャートコンバータ」作者。
鳥が好きでキンカチョウ(錦花鳥)を飼っています。

プロフィールを見る
やまライダーのTwitter(自転車用アカウント)
やまライダーのTwitter(システム寄りwebディレクター用)
やまライダーのInstagram