【画像付き解説】Googleフォームで定員に達した後キャンセル待ちを設定する方法

イベントが定員に達したのは嬉しいけど、その後の『キャンセル待ちしたい』という問い合わせ対応が大変…

せっかくイベントが定員に達しても、当日になって本当に全員出席するかどうかは分かりません。

そんな時のために、Googleフォームでキャンセル待ちの募集も設定出来たら、あなたが開催するイベントの満席率もグッと上げられますよね。

そこでこの記事では、Googleフォームでの募集が定員に達したら、自動でGoogleフォームをキャンセル待ちに切り替える方法について解説していきます。

手順としては、以下のような手順でキャンセル待ちをGoogleフォームに設定します。

STEP
Googleフォームとスプレッドシートを連携する
STEP
スプレッドシートに「参加者リスト」と「キャンセル待ち」というシートを作る
STEP
申込が定員に達したら、それ以降は自動で「キャンセル待ち」のリストに追加する

あとは「キャンセル待ち」に入ってるリストに対して、

「定員に達したため、キャンセル待ちとなりました。」

などのメールをご自身で行えばOKです。

ここまでの設定をGAS(Google App Script)という、Googleが提供するプログラミングツールを活用します。

でもプログラミングって難しいんじゃないの。。

心配無用です。

この記事では、プログラミングのコードをコピペ出来る様にしています

プログラミングが分からなくてもコピペで済む様にしてるので、安心して最後までお付き合いください

自動化出来る作業をまだ手作業でこなしていませんか?

私はGoogleが提供するプログラミングツールである、GAS(Google App Script)と生成AIを活用してお客様の業務を自動化や効率化するサービスを提供しています

もし今の業務の中で

  • 毎回の手作業に手間を感じる
  • もっと業務を効率化したい
  • ルーティン業務を自動化したい

このような不満を抱えてらっしゃるなら是非一度ご連絡ください。

「こんなことできる?」くらい軽めのご相談でも大歓迎です!

目次

GAS(Google App Script)とは

ここでは、GAS(Google App Script)を知らない人向けに簡単にGASについて解説していきます。

GASとは、Googleが提供する、業務の自動化に特化したプログラミングツールです。

「スプレッドシート」「Gmail」「Googleドライブ」といった、ビジネスでよく使うGoogleのサービス同士を連携させ、日々の作業を自動化する事が出来ます

うちはExcelがメインだから…

という方もご安心ください。

GoogleドライブにExcelファイルをアップロードして、Excelファイルをスプレッドシートに変換すれば、ExcelファイルでもGASを使う事が可能です。

Excelをスプレッドシートに変換する方法について気になる方はこちらの記事をご参照ください!

GASを使えば、こんな事が出来ます!

Googleのサービスを自由に連携させる

スプレッドシートの情報を元に、自動でGmailを送信したり、Googleカレンダーに予定を追加したり、Googleドライブにフォルダを自動作成したり。

複数のサービスをまるで一つのソフトのように連携させて、業務を自動化できます

決まった時間に、完全に“ほったらかし”で動かす

「毎日朝8時にレポートを作成」「毎週月曜の朝9時にタスクを通知」といったように、パソコンを触っていなくても、設定した時間に自動でプログラムを実行できます。

日次・週次・月次の定型業務を、“ほったらかし”にすることが可能です。

Googleのサービスにオリジナルの機能を追加出来る

スプレッドシートやGoogleフォームを使ってる際「あとこんな機能があったらいいのに…」と思うこともあると思います。

その「あとこれさえあれば…」を実現する事が出来ます

GASを使ってオリジナルの機能を追加することで、「かゆいところに手が届かない」を解決します

この様に、Googleのサービスを自分なりにアレンジして自動化まで出来るのがGASの大きな魅力です。

Googleフォームとスプレッドシートを連携

ここでは、Googleフォームの回答を自動でスプレッドシートに転記させる方法について解説していきます。

STEP
イベントの募集に使うGoogleフォーム内で
「回答」→「スプレッドシートにリンク」をクリック
「回答」ボタンを押して「スプレッドシートにリンク」ボタンをクリック
STEP
「回答の送信先を選択」の画面でファイル名を決めて「作成」をクリック
ポップアップ画面で「作成」ボタンをクリック
STEP
シート名を「参加者リスト」に変更

作られたシートをダブルクリックしてシート名を「参加者リスト」に変更してください。

「参加者リスト」というシートを作成
STEP
「参加者リスト」のシートをコピー

「参加者リスト」のシートの横にある三角ボタン(▼)をクリックしてください。

すると選択肢を選ぶ画面になると思います。

その中で「コピーを作成」をクリックしてください。

「コピーを作成」というボタンをクリック
STEP
「キャンセル待ちリスト」というシートを作成

先ほどと同じ様に、コピーされたシートをダブルクリックしてシート名を「キャンセル待ちリスト」に変更してください。

「キャンセル待ちリスト」というシートを作成

GASの設定方法

ここからは、GASを実際に設定する方法について解説していきます。

STEP
スプレッドシートを開く
STEP
「拡張機能」→「AppsScript」をクリック
「拡張機能」というボタンを押して「Apps Script」というボタンをクリック
STEP
コードを記述する画面が出てきたら完成
プログラミングを実行する画面

この画面になったら設定完了です!

GASでキャンセル待ちを設定する

ここからは実際に、GASのコードを記述していきます。

コードのコピーを貼り付ける

まず最初に、すでに記述があるfunction myFunction() {}を全て削除してください。

何も書かれてない状態になったら、以下のコードを先ほどの画面に貼り付けてください。

function onFormSubmit(e) {
  // --- ① 定員数を設定してください ---
  const capacity = 20; // 例:定員が20名の場合

  // --- ② シート名を設定してください ---
  const mainSheetName = "参加者リスト"; // 参加者リストのシート名
  const waitingSheetName = "キャンセル待ちリスト"; // キャンセル待ちリストのシート名

  // ---(ここから下は変更不要です)---
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const mainSheet = ss.getSheetByName(mainSheetName);
  const waitingSheet = ss.getSheetByName(waitingSheetName);
  const currentEntries = mainSheet.getLastRow() - 1;
  if (currentEntries > capacity) {
    const lastRow = mainSheet.getLastRow();
    const rangeToMove = mainSheet.getRange(lastRow, 1, 1, mainSheet.getLastColumn());
    const valuesToMove = rangeToMove.getValues();
    waitingSheet.appendRow(valuesToMove[0]);
    mainSheet.deleteRow(lastRow);
  }
}

あなたが設定すべき箇所は①と②だけです。

重要な箇所だけ解説します。

const capacity = 20;

ここが定員を設定する箇所です。

ここでは20にしてますが、5人なら510人なら10と自分に合わせた数字に変更してください。

const mainSheetName = “参加者リスト”;
const waitingSheetName = “キャンセル待ちリスト”;

ここはシート名を記述しています。

先ほど、スプレッドシート内でシート名を設定する際、 「参加者リスト」と「キャンセル待ちリスト」で、すでに設定しているなら変更する必要はありません。

コードを保存と実行

貼り付けが終わったら、Macユーザーの方は「Command + S」Windowsユーザーの方は「Ctrl+ S」を押してください。

これでコードが保存されます。

次に、このコードを実行する必要があります。

コードを実行するために、Macユーザーの方は「Command + R」Windowsユーザーの方は「Ctrl + R」を押してください。

すると以下のような画面になったと思います。

「承認が必要です」の画面

この画面になったら「権限を確認」をクリックしてください。

すると以下のような画面になると思います。

アカウントを選択する画面

この画面になったらご自身のアカウント名をクリックしてください。

すると最後に以下のような画面になります。

アクセス権を付与する事を確認する画面

この画面になったら「続行」を押してください。

これで完了です。

問題なければ、コードが実行されます。

するとコードを記述する画面の下から「実行ログ」という画面が出てきます。

プログラミングが実行完了した画面

この画面の中に「実行完了」と記載があったら大丈夫です。

トリガーの設定

しかし、これだけではまだ定員の設定がされていません。

最後に「トリガーの設定」が必要になります。

ついていくの大変だと思いますが、あとはここだけなので一緒に頑張りましょう!

「トリガー」とは、簡単にいうと、「この条件になったら、このプログラム(GAS)を動かして」と設定するスイッチです。

ここで言うと、「フォームが送信されたらGASを動かして」と設定します。

それでは早速設定していきます。

まずコードを記述する画面の中で、左手にある、「トリガー」という箇所をクリックします。

すると、以下のような画面に切り替わると思います。

トリガーを設定する箇所を解説

この画面の中で右下にある「トリガーを追加」という箇所をクリックします。

すると画面が切り替わり以下のような画面になると思います。

「トリガーを追加」の位置を解説

この画面の中で、以下の設定をします。

  • 「イベントのソースを選択」を「スプレッドシートから」
  • 「イベントの種類を選択」を「フォーム送信時」

に変更します。

あとは、「保存」をクリックするだけです。

トリガーの設定方法を解説

すると先ほどと同じ様に、「アクセス権を確認」する画面が出てくると思います

こちらは先ほどと同じ手順で進めてもらって大丈夫です。

アクセス権の承認が終わって、トリガーがきちんと設定されていれば、トリガーが反映されます

トリガーの設定が完了した画面

このような画面になっていたら完全に設定は完了です。

お疲れ様でした!
あとは試しに、設定した人数を超えたら「キャンセル待ちリスト」に移動するかご自身でも試してみてください!

まとめ

ここまでお疲れ様でした!

Googleフォームでキャンセル待ちを設定するのは、Googleフォームに自動で定員を設定する方法と比較してプログラミングのコードや設定することが増えるので、やや難しく感じるかもしれません。

その分、一度設定してしまえば、得られるメリットは絶大です。

  • 連絡ミスがなくなる
  • イベントの満席率が向上する
  • 面倒な管理業務から解放される

この様にあなたの負担を大きく減らすだけでなく、更なるビジネスチャンスを広げることが出来ます。

ぜひこの記事を参考にして、Googleフォームでのキャンセル待ちの設定を試してみてください。

私はGoogleが提供するプログラミングツールである、GAS(Google App Script)と生成AIを活用してお客様の業務を自動化や効率化するサービスを提供しています

もし今の業務の中で

  • 毎回の手作業に手間を感じる
  • もっと業務を効率化したい
  • ルーティン業務を自動化したい

このような不満を抱えてらっしゃるなら是非一度ご連絡ください。

「こんなことできる?」くらい軽めのご相談でも大歓迎です!

  • URLをコピーしました!

MASAのアバター MASA 生成AI×GASを活用した"業務効率化コンサルタント"

MASAです。
GASや生成AIを活用して業務の効率化を支援しております。
スプレッドシートを中心にGoogle Workspaceのお役立ち情報も合わせて発信中♪( ´▽`)

目次