Googleフォームで作成した申し込みフォームなどに人数制限を設け、上限に達したら受け付け終了のメッセージを表示させる方法をご紹介します。1人で複数回、回答しないようにする方法についても解説しているので、ぜひ参考にしてみてください。
定員に達したらフォームを締める方法
右上の[その他]から、[スクリプトエディタ]を開きます。
以下のコードを貼り付けし、[プロジェクトを保存]をクリックします。
このとき2行目の var LIMIT_COUNT = 3 の数字の部分を、上限人数に変更してください。
function closeForm() {
var LIMIT_COUNT = 3;
var form = FormApp.getActiveForm();
if (form.getResponses().length >= LIMIT_COUNT) {
form.setAcceptingResponses(false);
}
}
1行目の function の後ろの closeForm は、任意のプログラム名です。
setAcceptingResponses には、フォームが現在回答を受け付けているかどうかを設定します。回答を受け付ける場合は true、受け付けない場合は falseを入力します。
プログラムが正しく動作するかどうか、[実行]を押して確認します。
初めて実行する場合は承認を求められるので、[権限を確認]をクリックします。
自身のアカウントを選択し、[許可]をクリックします。
動作確認ができたら、左サイドの[トリガー]から[トリガーを追加]をクリックします。
実行する関数から、作成したプログラム名(closeForm)を選択します。
イベントの種類を[フォーム送信時]に設定し、[保存]をクリックすれば完成です。
回答フォームから制限人数(3名)が回答を送信します。
次に回答フォームを開くと、フォームの回答受け付け終了のメッセージが表示されます。
1人が複数送信するのを防ぐため、[設定]タブの[回答を1回に制限する]をオンにしましょう。
回答受け付け終了のメッセージは、[回答]から変更できます。
このとき回答を受け付けている場合も、一度[回答を受け付けていません]にする必要があります。