セミナーやイベント、面談予約などで Googleフォームを活用している方は多いと思います。
でも、こんな悩みはありませんか?
- 「定員に達してもフォームから申し込みできてしまう…」
- 「申込が多くて毎回手動で確認・停止するのが面倒…」
- 「残り何人分の枠があるか、見える化したい」
実はこれ、Google Apps Script(GAS)を使えば無料で簡単に解決できます。
この記事では、Googleフォームで「定員に達したら受付を自動停止し、残席数も表示する方法」をステップ形式でご紹介します。
この記事でできること
- Googleフォームに定員数を設定する
- 申込数が定員に達したら受付を自動終了する
- 残り枠数をフォームの説明欄に表示する
目次
Step1:Googleフォームを作成する
まずは通常通り Googleフォームで申し込みフォームを作成してください。
この時点では定員設定はまだ不要です。
👉GoogleFormを使ってアンケートフォームを作成する方法はこちら
Step2:定員管理用のスクリプトを追加する
▶ スクリプトエディタを開く
- Googleフォームの「︙」→「スクリプトエディタ」を開きます
- 以下のスクリプトを貼り付けて保存します👇
function endFormCheck() {
var LIMIT_COUNT = 20; //最大収容人数を定義
var form = FormApp.getActiveForm();
//フォームの回答行が最大収容人数以上だったら、回答受付を停止する
if (form.getResponses().length >= LIMIT_COUNT) {
form.setAcceptingResponses(false);
}
//最大収容人数未満だったら、フォームの説明文に残席数を表示する
else{
//残席数は最大収容人数-現在の回答数
var seat = LIMIT_COUNT -form.getResponses().length;
//フォームの説明文に【残り〇席です】と表示する
var description = '〇〇セミナーの申込受付は残り'+ seat + '席です。\n';
form.setDescription(description);
}
}
Step3:トリガーを設定して送信時にスクリプトを動かす
- メニューから「トリガー」を開く
endFormCheck
を「フォーム送信時」に設定- 保存して完了!
スクリプトでやっていることの流れ
このスクリプトでは、次の2つの処理をしています:
- 現在の回答数を取得して、定員に達していれば自動で受付を停止する
- まだ残席がある場合は、説明文に「残り〇席です」と表示する
実際の動き(画面イメージ)
✅ 定員に達していない場合
説明文に「残り〇席です」と表示され、申込が可能な状態です。
❌ 定員に達した場合
このようにフォームの回答受付が自動で終了し、申込ができなくなります。
🧠 補足解説
form.getResponses().length
で、現在の申込数を取得form.setAcceptingResponses(false)
で、回答受付を停止form.setDescription()
で、フォームの説明文を更新
⚠ 注意点とカスタマイズ例
- 最初の送信があるまで「残席数」は表示されません(手動で初期表示推奨)
- 説明文は毎回上書きされるので、固定文言も一緒に記述する必要があります
▶ 固定メッセージ付きの例:
var description = '初心者向け〇〇セミナー【開催日:○月○日】\n' +
'申込受付中!残り' + remaining + '席です。';
🔗 関連記事リンク
✅ まとめ
Googleフォームでの定員管理は、「GASを使って残席を自動管理&締切制御」することで、
運営の手間をぐっと減らすことができます。
セミナー、予約受付、面談スケジュールなどに幅広く活用できますので、
ぜひこの仕組みを導入してみてください!
コメント