【コピペOK】『Studio』フォームに自動返信メールを追加する方法|スプレッドシート×GASで即レス運用📩
『Studio』フォーム送信後に自動返信メールを送る方法を、スプレッドシート連携×GASで初心者向けに解説。列設定、コードのコピペ、トリガー設定、テスト手順まで一気に分かり、問い合わせ対応を"即レス運用"に改善できます📩
お問い合わせフォームを設置したあと、意外と困るのが自動返信メールです。
- 送信できたか不安で、同じ内容をもう一度送る人がいる
- 返信が来ない=放置?と思われて信用を落とす
- 受付完了メールがないと、ユーザー体験(UX)が弱い
でも安心してください。『Studio』フォームは「送信内容をGoogleスプレッドシートに連携」できるので、そこにGAS(Google Apps Script)を組み合わせれば、問い合わせが入った瞬間に自動返信を実現できます✨
この記事では、初心者でも迷わないように「列の準備 → コード貼り付け → 自動実行(トリガー)設定 → テスト」まで、まるっと手順化して解説します。
自動返信の仕組み(全体像)🔁
今回の構成はとてもシンプルです。
- 『Studio』フォームからお問い合わせが送信される
- 連携されたGoogleスプレッドシートに1行データが追加される
- GASが最新行をチェックして、メールを自動送信する
- 送信後にスプレッドシートへ「送信済み」「送信日時」を記録して二重送信を防ぐ
- GAS(Google Apps Script):Googleの自動化ツール。スプレッドシート操作やメール送信ができます。
- トリガー:特定のタイミング(変更時など)でGASを自動実行する設定。
- UX:ユーザー体験のこと。問い合わせ直後の安心感もUXの一部です。
事前準備|スプレッドシートの列を確認しよう✅
まずは、『Studio』フォームと連携済みのスプレッドシートを開いて、列の構成を確認します。今回の設定では、下記の列を使います。
- D列(4列目):お客さまのメールアドレス
- G列(7列目):送信ステータス(自動で「送信済み」)
- H列(8列目):送信日時(自動で記録)
※列を変えたい場合でも大丈夫。あとでコード内の数字(列番号)を変えるだけで対応できます👌

手順1|Apps Script(GAS)を開いてコードを貼る🧩
- スプレッドシート上部メニューから「拡張機能」→「Apps Script」をクリック
- 新しいタブでスクリプト画面が開きます
- 最初から入っている
myFunctionなどのコードは削除 - 記事後半の「コード全文」をそのままコピペ
- 保存(💾アイコン)して、プロジェクト名を「自動返信」などに変更しておく

手順2|トリガー設定で"自動"にする⏰
コードを貼っただけでは、まだ自動で動きません。「スプレッドシートが更新されたら実行する」設定=トリガーを追加します。
- Apps Script 左メニューの時計アイコン(トリガー)をクリック
- 右下の「+トリガーを追加」をクリック
- 以下の通りに設定します
- 実行する関数:
sendAutoReply - イベントのソース:スプレッドシートから
- イベントの種類:変更時
- 実行する関数:
- 保存して完了!

初回だけ出る「このアプリは確認されていません」について🔐
表示されたら、「詳細」→「(プロジェクト名)に移動」→「許可」の順で進めればOKです。
手順3|テスト送信で動作確認🧪
最後に、実際にフォームからテスト送信します。チェックポイントはこの2つです。
- スプレッドシートのG列に「送信済み」が入る
- H列に送信日時が入る
- 入力したメールアドレス宛に自動返信メールが届く
よくあるつまずき&改善ポイント💡
送信元アドレスを指定したい(差出人を会社アドレスにしたい)
コード内にSENDER_EMAILという設定があります。ここに別アドレスを入れる場合、Gmail側でエイリアス登録(または送信権限の設定)が必要になることがあります。まずはSENDER_EMAIL = ""(空欄)で動作確認してから、差出人の最適化を進めるのがおすすめです。
二重送信が不安
この仕組みでは、送信後にG列へ「送信済み」を書き込むため、同じ行に対しては繰り返し送信されにくい設計です👍
返信内容を"問い合わせ内容入り"にしたい
本文(BODY)に「お名前」「問い合わせ本文」などを差し込むには、スプレッドシートの該当列を読み込むだけで拡張できます。まずは今回の"受付完了"テンプレで運用を安定させ、次のステップでパワーアップするのが現実的です。
コード全文(このままコピペOK)💻
function sendAutoReply() {
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// 【設定エリア】ここだけ書き換えればOKです!
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// ■ 1. メールの基本設定
const SUBJECT = "【自動返信】お問い合わせありがとうございます";
const SENDER_NAME = "送信者名に書き換えてください";
// ★重要:空欄 "" の場合、ログイン中のGoogleアカウントから送信されます。
const SENDER_EMAIL = "";
// ■ 2. スプレッドシートの列番号
// [A列=1, B列=2, C列=3, D列=4, E列=5, F列=6, G列=7, H列=8 ...]
const COL_EMAIL = 4; // D列
const COL_STATUS = 7; // G列
const COL_TIMESTAMP = 8; // H列
// ■ 3. メールの本文
const BODY = `
お問い合わせありがとうございます。
以下の内容で受け付けいたしました。
担当者より、3営業日以内に折り返しご連絡させていただきます。
今しばらくお待ちくださいませ。
--------------------------------------------------
本メールはシステムによる自動送信です。
お心当たりがない場合は、破棄していただきますようお願いいたします。
--------------------------------------------------
`;
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// 【システム処理エリア】ここから下は変更不要です
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
if (lastRow < 2) return;
const userEmail = sheet.getRange(lastRow, COL_EMAIL).getValue();
const status = sheet.getRange(lastRow, COL_STATUS).getValue();
if (userEmail !== "" && status !== "送信済み") {
try {
let options = { name: SENDER_NAME };
if (SENDER_EMAIL !== "") {
options.from = SENDER_EMAIL;
}
GmailApp.sendEmail(userEmail, SUBJECT, BODY, options);
sheet.getRange(lastRow, COL_STATUS).setValue("送信済み");
sheet.getRange(lastRow, COL_TIMESTAMP).setValue(new Date());
} catch (e) {
sheet.getRange(lastRow, COL_STATUS).setValue("エラー: " + e.message);
}
}
}
まとめ|『Studio』フォーム運用は「即レス」で信頼が上がる✨
自動返信メールがあるだけで、問い合わせ直後の不安が消えて、サイトの信頼感が一段上がります。今日やることはこの3つだけです。
- スプレッドシートの列(D/G/H)を確認
- GASにコードを貼って保存
- トリガーを「変更時」で設定してテスト送信
次の改善としては、メール本文に「お名前」「お問い合わせ内容」を差し込むと、さらに"ちゃんと届いた感"が増しておすすめです📩
