guide

Googleフォームで予約枠を作る|埋まった枠を隠す工夫

2026年10月2日・Rizaflow編集部

「google フォーム 予約 枠」で調べる人が本当に知りたいのは、選択肢の作り方ではありません。埋まった枠を自動で隠せるのか、定員に達したら止まるのか、この2点です。結論を先に書くと、フォーム全体を締め切る設定は標準で用意されていますが、選択肢ごとに定員を管理して埋まった枠を消す動きは、標準の設定では作れません。しかも回答数の上限には、同時に回答された場合は上限を超えて受け付けるという但し書きが公式ヘルプに書かれています。ここでは2026年9月25日時点の公式ヘルプで確かめた仕様をもとに、できることと、補うために要る作業を分けて書きます。

Googleフォームで予約枠を作るとどうなるか

フォームで予約を受ける形は、実際にはアンケートの応用です。希望する日時を選択肢として並べ、名前と連絡先を入れてもらい、送信された回答をスプレッドシートで受けます。初期費用はかからず、作るのに専門の知識も要りません。

向いている場面は限られています。1つは期間が決まっている受付です。説明会、体験会、内覧会、面談週間のように、日程が決まっていて1回で終わる受付なら、フォームで足ります。もう1つは件数が少ない受付です。1日に数件なら、送信された回答を人が見てカレンダーに写す運用が回ります。

向いていない場面もはっきりしています。毎日続く予約、先着順で埋まる人気の枠、当日や直前の変更が多い受付です。この3つに当たる場合、フォームで受けると人の確認作業が毎日発生します。

作る前に押さえておくとよいのは、フォームは公開しないと回答を受け付けられないという点です。公式ヘルプは、公開されていないフォームでは回答を受け付けることはできないと書いています。右上の公開から、回答できる人の範囲を決めて公開します。リンクを知っているすべてのユーザーに開けるか、対象のグループに限るかを選べます。

もう1つ、フォームは埋め込みができます。その他のメニューからHTMLを埋め込むを選び、表示されたHTMLを自社サイトに貼れば、サイトの中で予約を受けられます。ただし、ファイルのアップロードに関する質問、評価に関する質問、質問や選択肢の画像、保護されているテストを含むフォームは、メールに埋め込むことができません。

枠を選択肢として並べる手順

枠の作り方には2つの型があります。どちらを選ぶかで、後の集計の手間が変わります。

1つ目は、日時をそのまま選択肢にする型です。ラジオボタンの質問を1つ置き、「10月3日(金)10時00分」「10月3日(金)11時00分」のように選択肢を並べます。作るのは簡単で、回答も1列で受けられます。枠の数が20を超えると画面が長くなるので、日付ごとにセクションを分けるか、日付を選ぶ質問と時刻を選ぶ質問の2段に分けます。

2つ目は、日付を選ぶ質問と時刻を選ぶ質問を分ける型です。セクションへの移動を使うと、選んだ日付ごとに次のページを変えられます。金曜だけ夜の枠がある、土曜は午前だけ、といった条件をそのまま表現できます。作りは複雑になりますが、選択肢の数が増えても画面が短く保てます。

どちらの型でも、入力を求める項目は絞ります。予約に必須なのは名前、連絡先、希望の枠の3つです。公式ヘルプによると、メールアドレスは設定の回答から収集できます。確認済みを選べばGoogleアカウントのアドレスが記録され、回答者からの入力を選べば手で打ってもらう形になります。確認済みを選ぶと回答者はログインが必要になるため、来店客向けの受付では回答者からの入力のほうが通りやすくなります。

送信後の画面も設定しておきます。設定のプレゼンテーションから確認メッセージを編集できます。ここに「受付の内容を確認して、担当から折り返し連絡します」と書いておくと、予約が確定したのかどうかで生じる問い合わせが減ります。フォームで受けた時点では枠が確定していないので、この一文は書いておく価値があります。

受付を締め切る3つの設定

締め切りの手段は3つあり、効く場面が違います。公式ヘルプの手順は次の通りです。

1つ目は、回答の受け付けを止める操作です。公開済みのフォームの右上の公開アイコンから、回答を受付中をオフにします。オフにすると、回答者には回答の受け付けが終了したというメッセージが出ます。メッセージは編集アイコンから自分の文章に変えられます。「次回の受付は10月20日から始めます」のように次の案内を書いておけば、来た人を取りこぼしません。

2つ目は終了日です。回答を受付中で終了日または回答数の上限を設定を選び、特定の日付から日時を選択で日付を指定します。申込の締め切りが決まっているイベントでは、この設定を入れておけば締め忘れがなくなります。

3つ目は回答数の上限です。同じ画面で回答数で終了を選び、受け付ける回答数の上限を入れます。公式ヘルプは、フォームにすでに回答がある場合、入力する数値はこれまでに受信した回答の数より大きくする必要があると書いています。つまり、すでに30件入っているフォームに上限20件を後から設定することはできません。

この3つで足りるのは、フォーム全体で1つの定員を管理する場合です。定員20名の説明会を1回だけ開くなら、回答数で終了に20を入れれば足ります。足りないのは、枠ごとに定員がある場合です。10時の枠が5名、11時の枠が5名という形は、フォーム全体の上限では表現できません。

埋まった枠を隠すには何が要るか

選択肢ごとの定員を管理して、埋まった枠を選べなくする動きは、標準の設定にはありません。実現するには自分で仕組みを足すことになります。フォーム作成サービスの解説記事も、この点を明確に書いています。

Googleフォームで作成した予約システムに人数制限を設定するには、Googleフォームのスクリプトエディタ(Google App Script)にスクリプトを記載する必要があります。 出典: form.run

スクリプトでやることは決まっています。回答が送信されたときに動く仕掛けを付けて、送信された枠の件数を数え、定員に達していたらその選択肢をフォームから消す。この3つです。消す代わりに選択肢の文字に「満席」と足す形にする作りもあります。

この方法には3つの弱点があります。1つ目は、書いた人しか直せないことです。予約の受付は年単位で続くので、担当が変わったときに直せる人がいなくなります。枠の追加や時間の変更のたびにスクリプトを触るなら、店の中に触れる人を2人は置いておきたいところです。

2つ目は、動くまでに間があることです。送信のたびに動く仕掛けなので、ほぼ即時に反映されますが、同時に複数の送信が来た場合の順番は保証されません。人気の枠では、この隙間で定員を超えます。

3つ目は、フォームを開いている人の画面が古いままになることです。誰かが予約ページを開いたまま席を外し、5分後に送信した場合、その画面には消えたはずの選択肢が残っています。送信は通ってしまい、確認の連絡で断ることになります。

代わりの手として、枠ごとに別のフォームを作り、埋まったフォームの受け付けを止める方法もあります。枠が少ないうちは成り立ちますが、枠の数だけフォームを管理することになるため、日ごとの受付では現実的ではありません。

同じ枠に2人が入る事故はなぜ起きるか

フォームで予約を受けた店がほぼ必ず踏むのが、この事故です。原因は運用の甘さではなく、仕様に書かれています。

公式ヘルプは、回答数の上限について、複数のユーザーが同時に回答した場合、回答数の上限に関係なく回答が受け付けられると明記しています。つまり定員10名のフォームに同時アクセスが重なれば、11件目や12件目が通ることがあります。上限を設定していても超えます。

この仕様が効いてしまう場面は決まっています。募集開始の時刻を告知して一斉に開放したとき、メールマガジンやSNSで案内を出した直後、人気の講座の先着順の受付です。どれも同時アクセスが集中する条件です。

対策は3つの方向があります。1つ目は、超過を前提に運用することです。定員より少ない数を上限に設定して余裕を持たせ、超えた分は人が確認して調整します。定員10名なら上限を8名にしておく、といった形です。2つ目は、先着順にしないことです。受付期間を設けて、締め切り後に抽選か調整で決める形にすれば、同時アクセスでも問題になりません。3つ目は、そもそもフォーム以外で受けることです。空き枠の判定を仕組みの側が持っている道具なら、この事故は起きません。

やってはいけないのは、超過を人が気づかないまま放置することです。フォームの回答は自動で通るので、確認しなければ超過に気づきません。来店の当日に席が足りないという形で表に出ます。回答の通知を受け取る設定を入れ、件数を毎日確かめる運用が最低限になります。

回答を1回に制限する設定の副作用

同じ人が何度も送るのを防ぎたい場合、設定の回答から回答を1回に制限するをオンにできます。便利に見えますが、副作用があります。

公式ヘルプの但し書きは、フォームにアクセスして入力するには、Googleアカウントにログインする必要があると書いています。つまりこの設定を入れた瞬間に、Googleアカウントを持っていない人、ログインしていない人は予約できなくなります。仕事用の端末で別のアカウントにログインしている人は、切り替えの操作が入ります。

社内向けの申込や、学校の中での受付なら問題になりません。全員が同じドメインのアカウントを持っているからです。一方、来店客向けの受付では離脱に直結します。予約しようとした人が、ログイン画面を見た時点でやめます。

重複の送信を防ぎたい理由が「同じ人が複数の枠を取ってしまう」ことなら、別の手があります。1つは、フォームの案内文に1人1枠と書いておくことです。もう1つは、回答の一覧を見て重複を人が弾くことです。件数が少ないなら、後者で十分に回ります。

関連する設定として、回答の編集を許可するもあります。設定の回答からオンにすると、送信した人が後から自分の回答を直せます。日時の変更を自分でしてもらえるので、電話の往復が減ります。ただし、直された内容がこちらに通知されないと、変更に気づかないまま元の日時で待つことになります。通知の設定と併せて使う前提です。

スプレッドシートで枠を管理するときの注意

フォームの回答はスプレッドシートで受けるのが基本です。フォームの回答からスプレッドシートへのリンクのアイコンを押せば連携できます。残っている枠を数えるには、日時の列を集計して、定員から引く形にします。

ここで1つ、権限の落とし穴があります。公式ヘルプは、共同編集者とフォームを共有している場合、共同編集者はフォームにリンクされているスプレッドシートにもアクセスできると書いています。そのため共同編集者を外すときは、フォームとスプレッドシートの両方から外す必要があります。スタッフが辞めたときにフォームからだけ外して、スプレッドシートに残ったままになる事故が起きやすい場所です。予約者の名前と連絡先が入っているので、外し忘れは個人情報の管理として扱う話になります。

集計の作り方は単純です。回答が入る列の隣に、日時ごとの件数を数える表を作り、定員との差を出します。この表を見ながら、埋まった枠についてはフォームの選択肢から手で消すか、選択肢の文字に満席と足します。手で消す運用なら、1日に何回確かめるかを決めておきます。朝と夕方の2回で足りる件数なのか、1件入るたびに直す必要があるのかで、この方法が使えるかどうかが決まります。

回答をまとめて手元に落としたい場合は、その他のメニューから回答をダウンロードでCSVにできます。会計や名簿と突き合わせる作業があるなら、この形で出して別の表に貼るのが早いです。

予約した人への連絡をどこまでできるか

フォームで予約を受けた後、相手に何を返せるかは限られています。標準でできるのは2つです。

1つは回答のコピーの送信です。設定でメールアドレスを収集するをオンにし、回答のコピーを回答者に送信をリクエストされた場合か常に表示に設定します。これで送信した内容が相手に届きます。ただし公式ヘルプは、迷惑メールフィルタなどの不正使用対策により、回答のコピーが届かない場合があると注意しています。届かない前提で、送信後の画面にも内容を出しておくのが安全です。

もう1つは、こちらが受け取る通知です。フォームの回答からその他のメニューを開き、新しい回答についてのメール通知を受け取るをオンにします。予約が入ったことに気づけるので、これは必ず入れておきます。公式ヘルプは、通知のオプションを増やしたい場合やカスタマイズしたフォローアップメールを送りたい場合は、フォームの通知用アドオンをダウンロードするよう案内しています。

できないのは、前日のリマインダーです。フォームには送信のタイミングで動く仕組みしかないので、予約日の前日に自動で連絡する機能はありません。人が送るか、スクリプトを書くことになります。無断キャンセルを減らす手として最も効くのが前日連絡なので、ここが空くのはフォームで受ける形の弱いところです。

キャンセルの受け口もありません。予約した人が取り消したいとき、連絡先を探して電話かメールで伝えることになります。回答の編集を許可していれば日時の変更はできますが、取り消しの意思をどう伝えるかは決めておく必要があります。フォームの案内文に、キャンセルの連絡先を書いておくのが最低限です。

フォームの上限と、長く使ったときに起きること

フォームには回答数の上限があります。公式ヘルプは、フォームの特定の機能が期待どおりに動作しない場合、回答数が多すぎることが原因である可能性があるとして、4つの目安を挙げています。

回答の概要が表示されない場合は、回答数が50,000件を超えている可能性があります。フォームの回答がスプレッドシートと同期されない場合は、100,000件を超えている可能性があります。CSVをダウンロードしても送信日時で並べ替えられない場合と、質問や回答の個別ビューが表示されない場合は、10,000件を超えている可能性があります。

予約の受付は毎日積み上がるので、この数字は他人事ではありません。1日10件受けるなら、個別ビューが効かなくなる10,000件に達するのは3年目に入る前です。同期が止まる100,000件は遠い数字ですが、個別ビューが見られないだけでも確認の手間が増えます。

長く使う前提なら、年ごとにフォームを分けるのが実務的な回避策です。年度が変わったら新しいフォームに切り替え、前年のフォームは回答を受付中をオフにして保管します。スプレッドシートも年ごとに分かれるので、集計も軽くなります。

ただし分けると、URLが変わります。サイトやビジネスプロフィールに貼ったリンク、印刷物の二次元コード、メールの署名に入れたリンクを全部差し替えることになります。差し替え漏れがあると、締め切ったフォームに客が着きます。切り替える前に、貼った場所の一覧を作っておくと事故が減ります。

事前入力のリンクと埋め込みを使い分ける

フォームには、渡し方を工夫するための機能が2つあります。使い分けると、入力の手間と間違いが減ります。

1つは事前入力です。フォームのその他のメニューからフォームに事前入力するを選び、埋めておきたい欄に入力してリンクを取得します。このリンクを送ると、指定した欄が埋まった状態でフォームが開きます。日程の候補を1つに絞って送りたいとき、担当者名やコース名を固定したいときに効きます。相手が選ぶ項目が減るので、送信までの時間が短くなります。

もう1つは埋め込みです。その他のメニューからHTMLを埋め込むを選び、表示されたHTMLをサイトに貼ります。サイトから離れずに予約できるので、押した人の離脱が減ります。ただし、ファイルのアップロードに関する質問、評価に関する質問、質問や選択肢の画像、保護されているテストを含むフォームは、メールに埋め込むことができません。メールで直接入力させたい場合は、これらの項目を外しておきます。

リンクの渡し方にも設定があります。公開後は短縮版のリンクをコピーできるようになるので、URLを短縮のチェックボックスをオンにしてコピーします。印刷物や紙の案内に載せるなら、短いリンクか二次元コードにしておくと打ち間違いが消えます。

共有の範囲も決めておきます。回答者を指定して共有する場合、有効期限を追加で、フォームへのアクセスを外す日付を指定できます。期間限定の受付では、この設定で締め忘れを防げます。期限を消したいときは、有効期限の編集から削除します。

フォームで続ける場合に決めておく運用

フォームで受け続けると決めたなら、人がやる作業を先に決めておきます。決めずに始めると、毎日の判断として残り続けます。

1つ目は、確認するタイミングです。回答の通知をオンにした上で、1日に何回スプレッドシートを見るかを決めます。朝と夕方の2回で足りるのか、昼も見るのか。件数が増えたら回数を増やすことになります。

2つ目は、カレンダーへの写し方です。フォームで受けた予約を誰がカレンダーに入れるかを決めます。写す前に別の予約が入る可能性があるので、写すまでの時間は短いほうがよくなります。

3つ目は、断るときの文面です。同じ枠に2人入った、定員を超えた、希望の時間が埋まっていた。この3つは必ず起きるので、返す文面を先に用意しておきます。その場で考えると、書き方が人によって変わります。

4つ目は、満席になった枠の扱いです。選択肢から消すのか、満席と書き足すのか。消すと、その時間が元からなかったのか埋まったのかが相手に分かりません。満席と書き足すほうが、次の募集に繋がります。

5つ目は、記録の残し方です。フォームの回答は残りますが、来店したかどうか、何を頼んだかは残りません。この記録が必要なら、別の表を作ることになります。作るなら最初から作っておくほうが、後から遡るより楽です。

枠の管理をどこまで自分で作るか

ここまでを整理すると、フォームで予約枠を作る形は、受け付けるところまでは無料で作れて、枠の管理と受けた後を人かスクリプトが埋める構造だと分かります。

必要なこと Googleフォーム 専用の予約システム
枠を並べる できる できる
フォーム全体の定員 できる できる
枠ごとの定員 スクリプトが要る できる
同時アクセス時の超過 起きる 起きない
埋まった枠を隠す スクリプトか手作業 自動
前日リマインダー 人かスクリプト あり
キャンセルの受け口 自作 あり
来店後の記録 別の表を自作 あり

表の右側が要らない受付なら、フォームで十分です。1回で終わるイベント、社内の申込、月に数件の見学予約では、道具を入れる理由がありません。

判断が変わるのは、受付が毎日の仕事になってからです。枠ごとの定員、超過の確認、前日の連絡、キャンセルの受け口、来店後の記録。この5つを人が埋めていると、1日あたり30分から1時間が固定で消えます。この時間を金額に置き換えて、道具の月額と並べると答えが出ます。専用の道具で何ができるかはできることに一覧があり、業種ごとの受け方の違いは業種ごとの使い方で読めます。画面で確かめるならデモを見るから触れます。

選ぶときは、決済の扱いを先に見ます。前払いが前提の業種なら決済込みの道具が向きますが、来店時に支払う業種では決済を必須にしないほうが予約が通ります。決済が必須でない業態に合わせて、予約の受付から次の来店までを一続きにしている形の道具は、この前提で作られています。他社の道具との違いは他社との比較に整理してあり、金額の前提は料金で確かめられます。切り替えの途中で出やすい疑問はよくある質問にまとめてあります。

順番としては、まずフォームで1か月受けてみることをすすめます。そこで人が埋めた作業を書き出す。書き出した項目が5つを超えていたら、スクリプトを書くより道具を替えるほうが早い段階です。スクリプトは、書いた後も直し続ける人が必要になるという点を、費用の一部として数えてください。

Q1. Googleフォームで枠ごとの定員を設定できますか?

標準の設定ではできません。設定できるのはフォーム全体の回答数の上限と終了日です。選択肢ごとに定員を管理して埋まった枠を消すには、Apps Scriptを書く必要があります。枠が少ないうちは、満席になった選択肢を手で消すか、文字に満席と書き足す運用で回せます。

Q2. 回答数の上限を設定すれば定員を超えませんか?

超えることがあります。公式ヘルプは、複数のユーザーが同時に回答した場合、回答数の上限に関係なく回答が受け付けられると明記しています。募集開始の時刻を告知して一斉に開放する形では特に起きます。定員より少ない数を上限にして余裕を持たせるのが実務的な対策です。

Q3. 同じ人が何度も予約するのを防げますか?

設定の回答から回答を1回に制限するをオンにできます。ただしこの設定を使うと、回答者はGoogleアカウントへのログインが必要になります。来店客向けの受付では離脱の原因になるため、案内文に1人1枠と書いて、重複は回答の一覧で人が弾くほうが通りやすくなります。

Q4. 予約の前日にリマインダーを自動で送れますか?

フォームの標準機能では送れません。できるのは送信直後の回答のコピーの送信と、こちらが受け取る新着通知までです。回答のコピーは迷惑メールフィルタで届かない場合があると公式ヘルプにも注意書きがあります。前日連絡を自動にしたい場合は、スクリプトを書くか別の道具を使います。

ガイド一覧へ