Googleフォームで日付の回答をもらうには?カレンダーなしの対処法

googleform

Googleフォームには日付の入力欄を設定でき、予約受付やスケジュール調整など幅広い用途に活用されています。

ただ、指定した日付や特定の期間で選んでもらう方法が分からない方も多いのではないでしょうか。

この記事では、Googleフォームの日付設定を行う方法を画像を用いて解説します。

▼ フォームでの日程調整は「formrun」がおすすめ!
formrun(フォームラン)なら、日程調整フォームや予約フォームで自分のスケジュールを自動で反映させることが可能です。
GoogleカレンダーやOutlookなどのカレンダーツールと連携することで、予約フォームに空き時間を自動で表示させられます。

回答が受け付けるとカレンダーに自動で記録してくれるため、ダブルブッキングや対応ミスを防げます。
無料で永久に利用でき、Googleアカウントがあればワンクリックですぐに始められます
ビジネス用途では、formrun利用者の7割がGoogleフォームから乗り換えています。

フォームランの日程調整機能を詳しく知りたい方は、こちらのページをご覧ください。
>>カレンダーツールと連携して予約可能な時間帯を自動抽出!

Googleフォームとの違いを比較したい方は、こちらのページをご覧ください。
>> フォームランとGoogleフォームの違いは「便利で豊富な機能」があること

【注意】Googleフォームはカレンダーアプリと連携した日付設定はできない

Googleフォームはカレンダーアプリと連携していない

Googleフォームでは、日付の入力させる質問を作成可能です。ただし、カレンダーアプリと連動して空き日程を自動反映させる機能は備わっていません。

予定が埋まっている日を除外したり、直近の1週間だけを選べるようにしたりといった柔軟な日付設定はできません。

たとえば面談や予約受付のように、リアルタイムの空き状況に応じて日程を選ばせたい場合は、スケジュールが変更するたびに日付を手動で修正する必要があります。

カレンダー連携による日付の動的な制御ができない点は、Googleフォームの制限のひとつといえます。

Googleフォームの日付回答方法① 「日付」項目で自由に選択してもらう

ユーザーに日付を自由に選択してもらう場合であれば、Googleフォームの「日付」という質問項目を使えば、日付設定を行うことが可能です。

Googleフォームで新規質問を追加し、 質問の種類を「日付」に設定すれば、カレンダーから日付が選べるようになります。

Googleフォーム 日付

また、右下の縦に並んだ三点マークから、「時刻も不決める」にチェックが入れると、日付だけでなく時間も回答させられます。

日付の時刻設定

ただし、Googleフォームで「年を含める」のチェックが外れていると、カレンダーの入力ができなくなる点にご注意ください。

以上の設定を行うことで、下図ようにカレンダーでの日付選択が可能です。

Googleフォーム 日付

誕生日など、日程を自由に選んで欲しいときには、日付の質問項目でカレンダーから入力してもらう方法がおすすめです。

Googleフォームの日付回答方法② プルダウンで指定の日付を設定する

特定の日付から選択して欲しい場合は、プルダウンという質問項目を活用するのが有効です。プルダウンの選択肢に候補日を入れていきます。

まず、Googleフォームに新規質問を追加し、質問の種類をプルダウンに変更します。

Googleフォーム 日付

左側に出てくる「選択肢を追加」と書かれている欄に、候補日を入れていきます。

Googleフォーム 日付

設定が終わってから、回答画面を開くと、プルダウンからの入力ができるようになっています。

面談やレッスンなど、複数の候補日を指定して欲しい場合は、先ほど作成したプルダウンの質問をコピーし、質問タイトルに「第1希望」「第2希望」と追加します。

Googleフォーム 日付

質問を追加することで、下の画像のように、回答画面で第1希望、第2希望を選んでもらえるようになります。

Googleフォーム 日付

これでプルダウンを活用した、特定の日付を回答させることが可能です。

formrunなら自身のスケジュールに合わせた日程調整・予約フォームが作れる!

formrun 日程調整 BookRun

Googleフォームで日程調整を行う場合、空き枠の更新や予約の管理をすべて手入力する必要があり、手間がかかるうえにミスも発生しやすくなります。

弊社のフォーム作成ツール「formrun(フォームラン)」では、同様の日程調整ツール「BookRun(ブックラン)」と連携することで、空きスケジュールを自動でフォームに反映させられます

GoogleカレンダーやOutlook等のカレンダーツールと連携できるため、別途スケジュールを整理する必要はありません。

さらに、予約の上限数や受付期間、時間間隔なども柔軟に設定できるため、無理のないスケジュール管理が可能です。ダブルブッキングの心配もなく、予約対応の抜け漏れを防げます。

フォームの日程調整をもっとスムーズに、効率良く行いたい方は、ぜひformrunとbookrunをお試しください。
Googleアカウントがあればワンクリックで今すぐ始められます。

\日程調整をもっとスマートに!/

フォームランの日程調整機能を詳しく知りたい方は、こちらのページをご覧ください。
>>カレンダーツールと連携して予約可能な時間帯を自動抽出!

Googleフォームとの違いを比較したい方は、こちらのページをご覧ください。
>> フォームランとGoogleフォームの違いは「便利で豊富な機能」があること

日付を自動で更新させる設定方法

Googleフォームの標準機能では候補日の調整は手動で行う必要がありますが、GAS(Google Apps Script)を活用すると、プルダウンの日付を自動で更新可能です。

今回は、当日から7日間の候補日を自動で更新する方法を紹介します。

まず、下の画像のように選択肢に西暦を入れて今日の日付から7日間分の日付を入力します。

Googleフォーム 日付

Googleフォームの右上の縦に並んだ3点をクリックし、スクリプトエディタを選択してください。

Googleフォーム 日付

以下のスクリプトをコピーして、Googleフォームのスクリプトエディタにペーストしてください。


function updateDropdownDates() {
// フォームを取得
 const form = FormApp.getActiveForm();
 const items = form.getItems(FormApp.ItemType.LIST);
                  
 // 「日付を選んでください」というタイトルの質問を探す
 const dateQuestionTitle = "日付を選んでください";
 let dateItem = null;
                  
 for (let i = 0; i < items.length; i++) {
  if (items[i].getTitle() === dateQuestionTitle) {
   dateItem = items[i].asListItem();
   break;
  }
  }
                  
 if (!dateItem) {
  throw new Error("対象のプルダウン質問が見つかりませんでした。フォームの質問タイトルが「日付を選んでください」になっているか確認してください。");
 }
                  
 // 明日から7日間の日付リストを作成
 const options = [];
 const today = new Date();
                  
 for (let i = 1; i <= 7; i++) {
  const targetDate = new Date(today);
  targetDate.setDate(today.getDate() + i);
  const formattedDate = Utilities.formatDate(targetDate, Session.getScriptTimeZone(), "yyyy/MM/dd(E)");
  options.push(formattedDate);
 }
                  
 // プルダウンの選択肢を更新
 dateItem.setChoiceValues(options);
}
                  

スクリプトエディタに元々入っているスクリプトは、消してペーストします。

また、上のスクリプトは、回答する時点で「明日から1週間の日付を表示する」ために書かれたものです。

スクリプトのコピペが終わったら、上部のバーの保存アイコンをクリックしてください。

Googleフォーム 日付

上の写真の赤で囲った部分です。 その後、上部バーの「実行」をクリックします。

Googleフォーム 日付

「実行」をクリックしたとき、「承認が必要です。」というポップアップが出てくるので、「権限を確認」を選択してください。

また別のポップアップが出てきます。英語で表示されていたら、左下の「English(United States)」を、「日本語」に変更してください。

Googleフォーム 日付

使用するGoogleアカウントをクリックしてください。

Googleフォーム 日付

ページ下部の「許可」をクリックします。

Googleフォーム 日付

最初の画面に戻り、「実行」されます。

「実行」が完了するまで待った後、設定画面に戻ったとき、曜日が表示されていたら成功です。

Googleフォーム 日付

ここまででGASの設定が終わったので、次に、毎日日付が変わったときに、選択肢を更新するためのトリガーを設定します。

Apps Scriptの左側にマウスカーソルを合わせると出てくる、編集メニューから「トリガー」をクリックします。

Googleフォーム 日付

「結果がありません。」という画面が出てきたら、「新しいトリガーを作成します。」をクリックします。

トリガーの「イベントのソースを選択」を「時間主導型」、「時間ベースのトリガーのタイプを選択」を「日付ベースのタイマー」にして保存をクリックしてください。

Googleフォーム 日付

上の画像の赤で囲った部分が、変更したところです。

「時刻を選択」は、デフォルトのまま「午前0時~1時」にしておいてください。

保存をクリックしたとき、承認を求めるポップアップが出るので下の手順で承認します。

英語で表示されていたら、左下の「English(United States)」を、「日本語」に変更してください。

Googleフォーム 日付

使用するGoogleアカウントをクリックしてください。

Googleフォーム 日付

ページ下部の「許可」をクリックします。

Googleフォーム 日付

最初の画面に戻るので、「保存」をクリックすると完了です。

これで、Googleフォームの通知をSlackで受け取る準備が、すべて完了しました。 翌日、Googleフォームの設定画面を開いて確認してください。

Googleフォーム 日付

上の画像のように、最初の設定から1週間の日付が1日ずつずれて表示されていたら成功です。

入力しやすい日付回答でフォームを作成しよう

入力しやすい日付回答でフォームを作成しよう

Googleフォームでは、カレンダーやプルダウンで日付の入力をある程度コントロールできます。
ただし、用途によっては「候補日の制限がしづらい」「自動更新の設定が手間」「スマホでカレンダーが表示されない」といった課題も出てきます。

Googleフォームでの日程調整で「手動確認が大変」「空き状況をリアルタイムに反映できない」と感じた方は、「formrun(フォームラン)」の利用がおすすめです。

formrunなら、GoogleカレンダーやOutlookから空き時間だけを自動で抽出し、予約フォームの日程調整に自動で反映してくれます。回答を受け付けたら自動でスケジュールに記録するので、ダブルブッキングの心配もありません。

複数人のカレンダーも連携できるため、チームでの問い合わせ対応もスマートに行えます。

予約フォームや問い合わせフォームの日程調整を自動化させたい方は、formrunで日程調整機能を活用してみてください。
Googleアカウントがあれば無料ですぐに始められます