GASでフォーム回答に応じた自動メール送信の仕組み

先生

GoogleフォームとGASを連携させて、日々の業務を自動化しちゃいましょう!

GASでフォーム回答自動メール送信の仕組みを作る前に

Googleフォームの回答内容をトリガーにして、自動でメールを送信する仕組みは、アンケート結果の通知、問い合わせ対応、イベント申し込み受付など、様々な用途で活用できます。この記事では、Google Apps Script(GAS)を使って、フォームの回答内容に基づいて自動メールを送信する方法を、初心者にもわかりやすく解説します。

特に重要なのは、GASのトリガー設定です。フォームが送信されたときに自動的にスクリプトが実行されるように設定することで、リアルタイムに近いメール送信が可能になります。

この記事を読めば、GASの基本的な知識がなくても、フォームと連携した自動メール送信の仕組みを構築できるようになります。ぜひ、あなたの業務効率化に役立ててください。

必要なもの

自動メール送信の仕組みを構築するために、以下のものが必要です。

・Googleアカウント

・Googleフォーム

・Google Apps Script (GAS) の基本的な知識(この記事で解説します)

Googleフォームの作成

まず、メール送信のトリガーとなるGoogleフォームを作成します。

Googleドライブから新しいフォームを作成し、必要な質問項目を追加してください。例えば、氏名、メールアドレス、問い合わせ内容などを設定します。

フォームの回答先は、Googleスプレッドシートに設定しておきましょう。これにより、回答内容をGASから簡単に取得できるようになります。

フォーム作成後、回答先のスプレッドシートIDをメモしておきます。これはGASのスクリプトで必要になります。

GAS(Google Apps Script)の設定

次に、GASを設定します。Googleフォームの回答が記録されるスプレッドシートを開き、メニューバーから「ツール」>「スクリプトエディタ」を選択して、GASエディタを開きます。

GASエディタに、以下のコードを記述します。

// スプレッドシートのID (フォームの回答が記録されるスプレッドシート)
const SPREADSHEET_ID = 'YOUR_SPREADSHEET_ID';
// メール送信の設定
const EMAIL_ADDRESS = 'YOUR_EMAIL_ADDRESS';
function onFormSubmit(e) {
  // フォームの回答を取得
  const sheet = SpreadsheetApp.openById(SPREADSHEET_ID).getActiveSheet();
  const lastRow = sheet.getLastRow();
  const values = sheet.getRange(lastRow, 1, 1, sheet.getLastColumn()).getValues()[0];

  // メール本文を作成
  let message = '新しいフォームの回答がありました。

';
  for (let i = 0; i < values.length; i++) {
    message += sheet.getRange(1, i + 1).getValue() + ': ' + values[i] + '\n';
  }

  // メールを送信
  MailApp.sendEmail({
    to: EMAIL_ADDRESS,
    subject: 'フォームの回答',
    body: message
  });
}

上記のコードのYOUR_SPREADSHEET_IDを、先ほどメモしたスプレッドシートIDに置き換えてください。YOUR_EMAIL_ADDRESSは、メールの送信先となるあなたのメールアドレスに置き換えてください。

コードを記述したら、GASエディタのメニューバーから「ファイル」>「保存」を選択し、スクリプトに名前を付けて保存します。

トリガーの設定

次に、トリガーを設定します。GASエディタのメニューバーから「編集」>「現在のプロジェクトのトリガー」を選択します。

トリガーの設定画面で、「トリガーを追加」をクリックします。

以下の設定を行います。

・関数を選択: onFormSubmit

・イベントソースを選択: スプレッドシートから

・イベントの種類を選択: フォーム送信時

設定が完了したら、「保存」をクリックします。初回のみ、Googleアカウントへのアクセス許可が求められるので、許可してください。

これで、フォームが送信されるたびに、onFormSubmit関数が実行され、メールが自動送信されるようになります。

動作確認

最後に、動作確認を行います。Googleフォームに回答を送信し、設定したメールアドレスにメールが届くかどうかを確認してください。

もしメールが届かない場合は、GASのコードやトリガーの設定に誤りがないか確認してください。GASエディタの「実行ログ」を確認すると、エラーの原因を特定できる場合があります。

参考リンク

まとめ

この記事では、GASを使ってGoogleフォームの回答内容に基づいて自動メールを送信する方法を解説しました。GASを活用することで、様々な業務を自動化し、効率化することができます。ぜひ、今回の内容を参考に、GASを使いこなしてみてください。