Googleフォーム先着順で締め切りたい【GAS】
こんにちは。
気軽に申し込みフォームを作成できるGoogleフォーム。その手軽さから昨今イベントやセミナーの申し込みでよく使われていますよね。また、Googleフォームに入力された情報はスプレッドシートに蓄積されていくので、大変便利です。
Googleフォームを使ってイベントの申し込みフォームを作ったんだけど、今回のイベントは定員が決まっているので、先着◯名で締め切るにはどうしたらいいの? と悩んでいる方も多いのではないでしょうか。
このnoteでは申込者が一定の数に達するとGoogleフォームの回答を締め切る方法を解説します。
1. イベント申し込みフォームを作成する。
フォーム自体の作成方法については割愛しますが、Googleフォームではイベント参加申込書のテンプレートも用意されていますのでそれらを活用することができます。
2. スクリプトエディタを開く
3. スクリプトをコピペする
スクリプトエディタにすでに入力されているfunction myFunctionは一度全て消してください。そして、下のスクリプトをコピペします。数字の100と書かれている箇所が申し込みの上限(定員)ですので、実際の上限(定員)の数に書き換えます。
function formAutoClose() {
var limitNumber = 100; //ここの100という数字が定員。100を任意の数字に書き換える。必ず半角数字で。
var form = FormApp.getActiveForm();//今回作ったGoogleフォームを取得
if (form.getResponses().length = limitNumber) { //もしフォームの回答が定員の数と同じになれば
form.setAcceptingResponses(false); //フォームの回答を受け付けなくする
}
}
4. 保存
一旦「プロジェクトを保存」しましょう。
5. トリガーを設定する
スクリプトエディタの左側にある時計マーク(トリガー)をクリックします。
「トリガーを追加」
下の画像のように「フォーム送信時」を選択して「保存」します。
6. 承認作業
承認方法について詳しくはこちら↓
承認が完了し、トリガーにformAutoClose関数が追加されていれば完了
回答を締め切った後のメッセージを追加する
回答のタブから、「回答を受付中」をオフにします。
ここで、受け付け締め切り後回答者に表示するメッセージを書き換えることができます。(デフォルトのままでよければそのままでも大丈夫です。)
実際に申し込みを開始する場合は回答を「オン」にすることをお忘れなく!
終わりに
GASを使えばいろんな作業が自動化でき、業務改善に繋がります。Google Workspaceのアプリケーションを使って「こんなことできたら便利なのに」ということがあればぜひコメント欄へ!
GASについてもっと知りたいという方は『Google Apps Script完全入門』がおすすめです。
「スキ」「フォロー」&「シェア」お願いします。
Good bye.