【コピペでOK】Googleフォーム問合せに即レス!GASで自動返信メールを送る仕組みを30分で作る方法

フリーランスやお店を経営されているあなた。ホームページに設置した「お問い合わせフォーム」からの連絡、毎日チェックして一件一件メールを返信…なんて作業に、意外と時間を取られていませんか?「すぐ返信しなきゃ」というプレッシャーを感じたり、他の業務に追われて返信が遅れ、お客様を不安にさせてしまったり…。そんなお悩み、実は簡単な仕組みで解決できるんです。この記事では、プログラミング経験がなくても大丈夫なように、Googleフォームと「Google Apps Script(GAS)」という無料ツールを使って、お問い合わせに自動で一次返信する仕組みの作り方を、画像なしでも分かるくらい丁寧に解説します。30分後には、面倒な定型メールの返信作業から解放され、お客様にも「対応が早い!」と喜んでもらえる、そんな未来が手に入りますよ!

今回作成する自動化の全体像

これから作成する自動化は、以下の図のような流れで動きます。お客様がフォームを送信したのをきっかけに、プログラムが自動でメールを送ってくれる、というシンプルな仕組みです。

graph TD
    A[お客様: Googleフォームから問い合わせ送信] --> B(Googleスプレッドシートに回答が自動記録);
    B --> C{トリガー: フォーム送信を検知};
    C --> D[GAS起動: 自動返信プログラム実行];
    D --> E[1. 回答データ(名前,メアド)を取得];
    E --> F[2. 自動返信メールを作成];
    F --> G[3. お客様へメールを自動送信];
    G --> H[4. スプレッドシートに対応状況を記録];
    H --> I(完了!);

ステップ0:事前準備

本格的な作業に入る前に、必要なものを確認しておきましょう。といっても、特別なものは何もいりません。

  • Googleアカウント(Gmailなどが使える、いつものアカウントでOKです)
  • お問い合わせ用のGoogleフォーム(「お名前」「メールアドレス」「お問い合わせ内容」の項目があるものを想定しています)
  • お客様に感謝を伝えたい、という気持ち!

ステップ・バイ・ステップ構築ガイド

ここからは、具体的な手順を一つずつ解説していきます。焦らず、ゆっくり進めていきましょう。

Step1:Googleフォームとスプレッドシートを連携させよう

まずは、お客様からの問い合わせ内容を記録しておくための「台帳」を自動で作成する設定です。

  1. あなたのGoogleフォームの編集画面を開き、上部にある「回答」タブをクリックします。
  2. 回答タブの中に、緑色の十字マークが入ったスプレッドシートのアイコン(マウスを合わせると「スプレッドシートにリンク」と表示されます)があるので、これをクリックしてください。
  3. 「回答の送信先を選択」というウィンドウが表示されたら、「新しいスプレッドシートを作成」にチェックが入っていることを確認し、右下の「作成」ボタンを押します。

これだけで、フォームに新しい回答が送信されるたびに、このスプレッドシートへ自動で情報が書き込まれていくようになります。データベースの完成です!

Step2:自動化の心臓部「スクリプトエディタ」を開こう

次に、自動化のプログラムを書き込むための特別な場所を開きます。

  1. 先ほど作成されたスプレッドシートを開いてください。
  2. 画面上部のメニューバーから「拡張機能」をクリックし、出てきたメニューの中から「Apps Script」を選択します。
  3. 新しいタブで「無題のプロジェクト」という名前のページが開きます。ここが、私たちの代わりに24時間働いてくれるプログラムを書き込む場所、「スクリプトエディタ」です。なんだか秘密基地みたいでワクワクしませんか?

Step3:魔法の呪文(コード)をコピペしよう

いよいよプログラムの登場ですが、安心してください。自分で書く必要はありません。以下のコードをコピーして、貼り付けるだけです!

  1. スクリプトエディタに最初から書かれている function myFunction() { ... } という文字は、一旦すべて選択して削除してしまいましょう。
  2. そして、以下の「魔法の呪文(コード)」をそのままコピーして、空になったエディタ画面に貼り付けてください。
function sendAutoReply(e) {
  // --- ▼設定項目ここから▼ ---

  // あなたのフォームに合わせて、お名前とメールアドレスが何列目にあるか指定します
  // ※A列が1、B列が2、C列が3...と数えます
  const nameColumn = 2;     // お名前が入力されている列番号(例: B列なら2)
  const emailColumn = 3;    // メールアドレスが入力されている列番号(例: C列なら3)

  // 自動返信メールの件名と本文を自由に編集してください
  const subject = "【自動返信】お問い合わせありがとうございます";
  const body = `
{{name}}様

この度はお問い合わせいただき、誠にありがとうございます。
以下の内容でお問い合わせを受け付けました。

担当者より2営業日以内にご返信いたしますので、
今しばらくお待ちいただけますようお願い申し上げます。

---
お問い合わせ内容の要約:
{{inquiry}}
---

※本メールは送信専用です。ご返信いただいてもお答えできませんので、ご了承ください。

-----------------------------------
あなたの名前や会社名
あなたのサイトURLなど
-----------------------------------
`;

  // --- ▲設定項目ここまで▲ ---


  // --- ▼プログラム本体(ここは変更不要です)▼ ---
  try {
    const values = e.values;
    const timestamp = values[0];
    const name = values[nameColumn - 1];
    const email = values[emailColumn - 1];
    const inquiry = values.slice(3).join('\n'); // 4列目以降を全てお問い合わせ内容とする

    let emailBody = body.replace('{{name}}', name);
    emailBody = emailBody.replace('{{inquiry}}', inquiry);

    GmailApp.sendEmail(email, subject, emailBody);

    const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    const row = e.range.getRow();
    const statusColumn = sheet.getLastColumn() + 1;
    if (row === 2) { // 最初のデータ行の場合だけヘッダーを追加
        sheet.getRange(1, statusColumn).setValue("自動返信ステータス");
    }
    sheet.getRange(row, statusColumn).setValue("返信済み:" + timestamp);

  } catch (error) {
    Logger.log("エラーが発生しました: " + error.toString());
    const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    const row = e.range.getRow();
    const statusColumn = sheet.getLastColumn() + 1;
    sheet.getRange(1, statusColumn).setValue("自動返信ステータス");
    sheet.getRange(row, statusColumn).setValue("エラー:" + error.toString());
  }
  // --- ▲プログラム本体ここまで▲ ---
}

【カスタマイズポイント】
貼り付けたコードの上のほうにある「▼設定項目ここから▼」と「▲設定項目ここまで▲」の間だけ、あなたのビジネスに合わせて書き換えてください。特に、subject(件名)とbody(本文)は、お客様に届く大切なメッセージです。{{name}}と書かれた部分には、お客様がフォームに入力したお名前が自動で入るので、ぜひ活用してくださいね。

Step4:自動で動かす「きっかけ」を設定しよう

コードを設置しただけでは、まだ動きません。「フォームが送信されたら、このプログラムを動かしてください!」という命令(トリガー)を設定します。

  1. スクリプトエディタ画面の上部にある、フロッピーディスクの形をした「プロジェクトを保存」アイコンをクリックして、コードを保存します。
  2. 次に、左側のメニューから時計のような形のアイコン「トリガー」を選びます。
  3. 画面右下にある青い「トリガーを追加」ボタンをクリックします。
  4. 小さな設定ウィンドウが開くので、以下のように設定してください。
    • 実行する関数を選択: sendAutoReply を選びます。
    • イベントのソースを選択: 「スプレッドシートから」を選びます。
    • イベントの種類を選択: 「フォーム送信時」を選びます。
  5. 他の設定はそのままでOKです。右下の「保存」ボタンを押しましょう。

Step5:「お願いします!」と権限を承認しよう

トリガーを保存しようとすると、「この操作には承認が必要です」というメッセージが表示されます。これは、作ったプログラムが「あなたの代わりにメールを送ってもいいですか?」と許可を求めている状態です。安全な操作ですので、許可してあげましょう。

  1. 「権限を確認」ボタンを押し、あなたのGoogleアカウントを選んでください。
  2. 「このアプリは Google で確認されていません」という警告画面が表示されるかもしれません。これは私たちが自分で作ったプログラムだから表示されるメッセージなので、心配いりません。
  3. 左下にある「詳細」という文字をクリックし、その下に表示される「(プロジェクト名)に移動(安全ではありません)」というリンクをクリックしてください。
  4. 最後に、このプログラムに許可する操作(メールの送信やスプレッドシートの編集など)の一覧が表示されるので、右下の「許可」ボタンをクリックします。

これで、あなたの忠実な秘書(プログラム)が働く準備が整いました!

Step6:さあ、動くかテストしてみよう!

いよいよ最終ステップです。実際に自動返信が機能するか、テストしてみましょう。

  1. あなたが作成したGoogleフォームの公開ページを開き、自分でテスト回答を送信してみます。
  2. 「お名前」にはご自身の名前を、「メールアドレス」にはあなたが受信できるメールアドレスを入力し、お問い合わせ内容を適当に入力して送信します。
  3. 数分以内に、あなたが設定した件名と本文の自動返信メールが、入力したメールアドレスに届けば大成功です!
  4. さらに、連携したスプレッドシートを見てみてください。送信したテストデータの行の横に、「自動返信ステータス」という列が新しくでき、「返信済み」という記録が残っているはずです。これで対応済みかどうかが一目でわかりますね!

まとめ:自動化で生まれた時間を、もっと創造的な仕事に

お疲れ様でした!たったこれだけの手順で、24時間365日、あなたに代わってお客様へ一次対応してくれる頼もしい仕組みが完成しました。これで、お問い合わせ対応の心理的な負担から解放され、お客様には「すぐ返事が来て安心!」という良い印象を持ってもらえます。自動化によって生まれた時間は、新しいサービスを考えたり、お客様一人ひとりと丁寧に向き合う時間に使ったりと、もっと創造的な仕事に投資しましょう。今回のGASを使った自動化に感動したら、次は「毎月の請求書を自動で作成する」「特定のキーワードを含むメールが来たらSlackに通知する」など、さらに便利な自動化にもぜひ挑戦してみてください。あなたのビジネスは、もっともっと効率化できますよ!


免責事項:本記事で紹介している手順やコードは、執筆時点での情報に基づいています。各サービスの仕様変更により、同様の手順で動作しない可能性があります。また、本チュートリアルの実行によって生じたいかなる損害についても、当方は一切の責任を負いかねます。ご自身の責任において、バックアップを取るなどの対策の上、実行してください。

タイトルとURLをコピーしました