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

お仕事おつにゃッス🐈

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

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

GASを使えば少ないコードで、お礼や回答の確認などの独自のメールを返信できます。

この記事ではコピペOKのGoogle Apps Scriptのコードで解決します。

こんな人におすすめ!

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

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

目次

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

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

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

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

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

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

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

あっきょ

ぼくもアンケート作るときは使ってるッスよ!

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

GASでフォームに回答後、自動でメールを送信する準備。

ファイルは2つ必要です。

必要なファイル

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

Google フォームの作成

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

この記事では

  • 名前
  • 質問

の2項目を設定します。

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

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

「設定」をクリック

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

「回答」をクリック

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

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

Google フォームの設定は以上です。

スプレッドシートの作成

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

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

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

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

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

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

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

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

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

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

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つのメソッドの詳細はこちらから。

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メソッドの詳細はこちら。

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

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

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

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

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

トリガーを作成

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

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

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

トリガー画面の表示

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

トリガーを追加

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

選択後、右下の「保存」をクリックします。

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

トリガーの設定は以上です。

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

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

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

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

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

アンケートに記入

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

アンケートの回答を送信

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

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

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

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

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

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

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

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

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

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

GASでさらに業務効率化するなら勉強しつつ実際にコードを打って実践する必要があります。

GASを効率的に学ぶなら以下の2つの方法が多いです。

  • 参考書やオンライン教材で独学
  • プログラミングスクールを利用

正しく学ぶことで非エンジニアでも実用的な業務効率化のスキルが身に付きます

デイコーでは、GASのサンプルコードからおすすめのプログラミングまで幅広く紹介。

初心者にもわかりやすく解説しています。

あっきょ

プログラミングスクールは82社を分析したッス!

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

それでは、よいプログラミングライフを!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

文系未経験のWebエンジニア。事務職がプログラミング学習して社内SE部門立ち上げ&Webサイト作成。業務効率化で残業80%減を達成。得意な言語 : GAS, JavaScript, Python

目次