※当サイトの商品・サービスのリンク先にPRを含みます。

Google Apps Script 時短ツール

【残業半減】GASでフォーム回答後に文章付きでメールを自動返信

お仕事おつにゃッス🐈

文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!

Google フォームから来た回答後、確認メールを自動送信したら便利ですよね?

この記事ではそのお悩みを、コピペOKのGoogle Apps Scriptのコードで解決します。

あっきょ
この記事は以下で悩んでいる人におすすめ!

  • アンケートを受け取ったら自動でお客様にメールを返信したい
  • 手作業で一から確認のメールを送信して、ミスが出てくることが怖い
  • プログラミングでJavaScriptを学んだけど、何を作っていいかわからない

誰でも無料で簡単にできますので、お気軽に学んでいきましょう!

アンケート後にメールを送信するイメージ

GASでGoogle フォームのアンケートの回答後にメールを自動で送信するイメージ図

回答者がGoogle フォームでアンケートに答えたら、自動でお礼のメールを送信するアプリを作成します。

あなたは多数のお客様にアンケートを送り、お礼をかねて回答の確認メールを送信します。

しかし、数百人以上にメールを送ると多大な労力と時間がかかります。

また、送信漏れのミスが発生しやすくなります。

したがって、自動で送信するアプリを開発することで人的ミスや不安をすべて取り除きます

メールを自動返信する準備

GASでフォームに回答後、自動でメールを送信する準備をします。ファイルは2つ必要です。

必要なファイル

  • Google  フォーム ・・・ アンケートの作成
  • Google スプレッドシート  ・・・ 回答者の情報を保存&コードの貼り付け

Google フォームの作成

Google フォームでアンケートを作成します。

アンケートの作成方法がわかるなら、記事を飛ばしてサンプルコードを確認しましょう。

この記事では、「名前」と「質問」の2項目を設定します。

アンケートの作成 質問項目を設置

マウスカーソルを「設定」に合わせてクリックします。

「設定」をクリック

「回答」をクリックします。

「回答」をクリック

「メールアドレスを収集する」にチェックを入れます。Google フォームの設定は以上です。

「メールアドレスを収集する」にチェック

Googleフォームには他にも回答方法がたくさんあります。

アンケートの詳しい作成方法についてはこちらから。

【2024年版】Googleフォームで基本的なアンケートの作り方

続きを見る

スプレッドシートの作成

Google フォームと連携したGoogle スプレッドシートを作成します。

「回答」を選択して緑色の十字マークをクリックすると、回答結果を反映したスプレッドシートを自動生成します。

Google フォームからスプレッドシートを作成する手順

「新しいスプレッドシートを作成」を選択して「作成」をクリックします。

Google フォームからGoogle スプレッドシートを作成

回答結果を記入したシートがすぐにできあがります。スプレッドシートの準備は以上です。

Google フォームからスプレッドシートを作成した結果

サンプルコードを貼り付ける場所

サンプルコードはGoogle スプレッドシートにコピペ。

上バーの「拡張機能」の中にある「Apps Script」をクリックしてコードを貼り付けます。

GASをスプレッドシートに記入する際の「Apps Script」の表示

メールを自動返信するサンプルコード

Google Apps ScriptでGoogle フォームの回答を得たら自動返信するコードを紹介します。

解説の項目

  • サンプルコード
  • A, スプレッドシートの最終行と列を取得
  • B, フォームから得た最新の回答を取得
  • C, メール本文を作成して回答者に送信

サンプルコード

右上にあるマークを押すとコードのコピペが一瞬でできます。

また、文頭にアルファベットが付いているコメントごとに詳細を説明していきます。

function onFormSubmit() {
 //A.スプレッドシートの最終行と列を取得
 const sheet = SpreadsheetApp.getActiveSheet();
 const lastRow = sheet.getLastRow();
 const lastCol = sheet.getLastColumn();

 //B.フォームから得た最新の回答を取得
 const values = sheet.getRange(lastRow, 1,1, lastCol).getValues().flat();
 const email = values[1]; //メールアドレス
 const name = values[2]; //名前
 const answer = values[3]; //回答

 //C.メール本文を作成して回答者に送信
 const subject = "ご協力ありがとうございます。";
 const body = "この度はアンケートのご協力ありがとうございます。" + "\n" +
             "\n" +
             "【名前】\n" + name + "\n" +
             "【今朝は朝食を食べましたか?】\n" + answer + "\n";
             
  MailApp.sendEmail(email, subject, body);
}

A, スプレッドシートの最終行と列を取得

//A.スプレッドシートの最終行と列を取得
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
const lastCol = sheet.getLastColumn();

作成したスプレッドシートの最終行と最終列を取得します。

いいかえると、フォームから送られた最新の回答者を選択します。

最終行と最終列を取得する2つのメソッドの詳細はこちらから。

【5分で解決】GASでスプレッドシートの最終行と最終列を取得

続きを見る

B, フォームから得た最新の回答を取得

//B.フォームから得た最新の回答を取得
const values = sheet.getRange(lastRow, 1,1, lastCol).getValues().flat();
const email = values[1]; //メールアドレス
const name = values[2]; //名前
const answer = values[3]; //回答

Google フォームから得た最新の回答を取得します。

先ほど取得した行と列の番号をもとにセルの値を二次元配列で取り出し、配列内の要素を抽出しやすいようにします。

二次元配列を一次元配列に変換するflatメソッドの詳細はこちら。

【初心者必須】GASで二次元配列を一次元化するflatメソッド

続きを見る

C, メール本文を作成して回答者に送信

//C.メール本文を作成して回答者に送信
const subject = "ご協力ありがとうございます。";
const body = "この度はアンケートのご協力ありがとうございます。" + "\n" +
             "\n" +
             "【名前】\n" + name + "\n" +
             "【今朝は朝食を食べましたか?】\n" + answer + "\n";
             
MailApp.sendEmail(email, subject, body);

メールの本文を作成した後に回答者にメールを送信します。

定数subjectでメールのタイトル、定数bodyでメールの本文を作って引数に入れて送信します。

サンプルコードの説明は以上です。

トリガーを作成

回答を受け取ったタイミングでコードを実行するトリガーを作成します。

この設定で、メールを自動で返信できるようになります。

トリガーの設定

Apps Scriptの左画面のメニュー欄の時計アイコンの「トリガー」を選択します。

トリガー画面の表示

画面の右下にある「トリガーの追加」をクリックします。

トリガーを追加

「イベントの種類を選択」の「フォーム送信時」を選びます。

選択後、右下の「保存」をクリックします。トリガーの設定は以上です。

トリガー選択 フォーム送信時

「このアプリはGoogleで確認されていません」と表示した場合はこちら

【3分で解決】GASの「このアプリはGoogleで確認されていません」を許可する方法

続きを見る

アンケートからメールを送るテスト

実際にフォームに回答してメールが届くかテストします。

作成したアンケートに回答を記入して送信します。

メールアドレスには、あなたが所有しているアドレスを記入します。

アンケートに記入

アンケートに答えて完了画面が現れると回答は完了します。

アンケートの回答を送信

受信ボックスを確認し、メールが届いていたら成功です。

アンケートからメールが届くことの確認

【便利】業務効率化できるGASのコード一覧

この記事では、GASでフォーム回答後にメールを自動返信する方法を解説しました。

GASを使えばさらに便利で残業を減らせるコードを作成できます。

当サイトでは、メールの自動送信や便利ツールを開発しているのでぜひご活用ください。

もちろん、無料でコピペOKです!

【簡単】GASで時間を予約してメールを一斉送信する方法

続きを見る

【残業2割減】GASでBCCかCCでメールを送信

続きを見る

【残業3割減】GASでメールの一斉送信を自動化

続きを見る

おわりに | GASでスキルアップを目指すには

以上、GASでGoogle フォームの回答時にメールを自動送信する方法でした。

そのままコピペして日常業務で使いやすいように改修したり、プログラミングの練習や動作確認用に使ってみましょう。

GASでさらに業務効率化する場合、参考書やプログラミングスクールを使うとあなた自身でアプリを作るスキルが身に付きます

GASユーザーのあっきょがおすすめの勉強方法はこちら↓

スクール経験者のあっきょが82社から厳選してるッス!
あっきょ

次回の記事もご期待ください!

-Google Apps Script, 時短ツール
-, , , , , , , , , , , , , , , , , , ,