Googleフォームの事前入力URLをマスター!スプレッドシートとGASで自動生成&効率化する徹底解説

Googleフォームの「事前入力URL」が業務効率を劇的に改善する理由

Googleフォームは、アンケートや申し込み受付など、多岐にわたる用途で活用されている便利なツールです。しかし、回答者が毎回同じ情報を入力したり、入力内容に表記ゆれが生じたりする課題に直面することはありませんか?

そこで活躍するのが「事前入力URL」です。これは、特定の回答欄にあらかじめ値が入力された状態のフォームURLを作成する機能。回答者はプリセットされた内容を確認するだけで済み、入力の手間が大幅に削減されます。これにより、回答率の向上やデータ収集の精度向上、さらには回答者への配慮として好感度アップにも繋がります。本記事では、この事前入力URLの基本的な作り方から、スプレッドシートを活用した大量URLの自動生成、そしてGAS(Google Apps Script)で設問IDを効率的に取得する方法まで、具体的な手順を解説します。

まずは体験!Googleフォーム事前入力URLの基本的な作成手順

まずは、Googleフォームの標準機能を使って、事前入力URLを一つ作ってみましょう。この手順を理解することで、URLの構造が明確になり、その後の自動生成プロセスがスムーズになります。

  1. 通常のフォームを作成する: 質問項目を全て作成し、フォームを完成させます。
  2. 「事前入力したURLを取得」機能へアクセス: フォームの編集画面右上のメニュー(縦三点リーダー)から「事前入力したURLを取得」を選択します。
  3. 回答をプレ入力する: 表示されたフォームで、あらかじめ入力しておきたい回答を記入します。
  4. URLを取得する: ページ下部の「リンクを取得」ボタンをクリックし、生成されたURLを控えておきます。

このURLは、手動で入力した情報が組み込まれた、特定の回答がプリセットされた状態のものです。この時点ではまだ一つしか作れませんが、このURLの構造を理解することが、自動生成の第一歩となります。

大量のURLも怖くない!スプレッドシートで事前入力URLを量産する方法

手動で一つずつURLを作成するのは非効率的です。データベースや顧客リストがスプレッドシートにある場合、そのデータを使って事前入力URLを一括で生成できます。鍵となるのは、事前入力URLの構造を理解し、スプレッドシートの関数で結合することです。

事前入力URLの構造を理解する

取得した事前入力URLは、以下のような構造になっています。

https://docs.google.com/forms/d/フォームID/viewform?usp=pp_url&entry.設問ID=回答値&entry.設問ID=回答値...
  • https://docs.google.com/forms/d/フォームID/viewform?usp=pp_url: これはフォームのベースURLです。
  • &entry.設問ID=回答値: この部分が事前入力する項目を示しています。entry.の後に続く数字が「設問ID」、そして=の後に続くのが「回答値」です。複数の質問に事前入力する場合は、&で繋いで追加していきます。

スプレッドシートの数式でURLを生成する

スプレッドシートのデータ(例: 氏名、メールアドレスなど)を使って、この構造に沿ってURLを生成します。回答値には、日本語や記号が含まれる場合があるので、ENCODEURL関数を使って適切にエンコードする必要があります。

数式例:

例えば、A列に氏名、B列にメールアドレスがあり、それぞれの設問IDが「123456789」と「987654321」だとします。ベースURLは適宜ご自身のフォームのものに置き換えてください。

="https://docs.google.com/forms/d/YOUR_FORM_ID/viewform?usp=pp_url"&"&entry.123456789="&ENCODEURL(A2)&"&entry.987654321="&ENCODEURL(B2)

この数式をコピーして各行に適用すれば、データに応じた事前入力URLを瞬時に量産できます。これで、大量の招待メールを送る際や、個別アンケートの準備が格段に楽になります。

GAS(Google Apps Script)で設問IDをスマートに取得し、URL生成を自動化

スプレッドシートでのURL生成は非常に便利ですが、設問IDを手動で特定する作業は手間がかかることがあります。フォームの質問項目が増えたり、変更されたりするたびにIDを探し直すのは非効率的です。ここでGoogle Apps Script(GAS)の出番です。

GASを使えば、フォームの設問IDをプログラム的に取得し、スプレッドシートに書き出すことで、URL生成プロセスをさらに自動化・効率化できます。

GASコード例:フォームの設問IDとタイトルを取得する

function getFormQuestionIds() {
  const formId = 'YOUR_FORM_ID'; // ★ここにあなたのGoogleフォームIDを入力
  const form = FormApp.openById(formId);
  const items = form.getItems();

  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.clearContents(); // シートの内容をクリア
  sheet.appendRow(['質問タイトル', '設問ID', '質問タイプ']);

  items.forEach(item => {
    const title = item.getTitle();
    const id = item.getId();
    const type = item.getType().toString();
    sheet.appendRow([title, id, type]);
  });
  Logger.log('設問IDの取得が完了しました。');
}

コードの説明:

  • formId: GoogleフォームのURLから取得できるIDです。
  • FormApp.openById(formId): 指定したIDのフォームを開きます。
  • form.getItems(): フォーム内のすべての質問項目(アイテム)を取得します。
  • item.getTitle(), item.getId(), item.getType(): 各質問アイテムのタイトル、ID、タイプを取得します。
  • sheet.appendRow(): 取得した情報をスプレッドシートに書き込みます。

このスクリプトを実行すると、現在アクティブなスプレッドシートにフォームの全質問とそれに対応する設問IDが一覧で出力されます。これにより、どの質問にどのentry.IDを使用すればよいかが一目瞭然となり、スプレッドシートでのURL生成数式作成が格段に効率化されます。

GASで取得したIDを活用する

GASで取得した設問IDをスプレッドシートの数式と組み合わせることで、URL生成の確実性が増し、フォームの変更にも柔軟に対応できるようになります。例えば、新しい質問が追加された場合でも、再度スクリプトを実行するだけで最新の設問IDリストが得られるため、URLの更新が容易になります。

事前入力URLの応用例と活用シーン

Googleフォームの事前入力URLは、以下のような様々なシーンで強力なツールとなります。

  • イベント招待・参加登録: 参加者の氏名や所属をあらかじめ入力した招待URLを送付し、登録の手間を省く。
  • 個別アンケート: 顧客IDや購入履歴など、パーソナルな情報を事前にセットし、顧客ごとにカスタマイズされたアンケートを実施。
  • 社員情報の更新: 従業員に自身の情報(住所、電話番号など)を更新してもらう際、既存の情報をプリセットして入力ミスを防ぐ。
  • 進捗報告フォーム: プロジェクト名や担当者名をあらかじめ入力し、報告者の負担を軽減する。
  • オンラインテストの受験者特定: 受験者名や受験番号を事前に埋め込み、本人確認を容易にする。

このように、データとフォームを連携させることで、ユーザーエクスペリエンスの向上と業務の自動化を両立させることが可能です。

まとめ:Googleフォーム事前入力URLで業務を次のレベルへ

Googleフォームの事前入力URLは、単なる便利な機能以上の可能性を秘めています。手動での基本的な作成から、スプレッドシートでの効率的な一括生成、そしてGAS(Google Apps Script)を活用した設問IDのスマートな取得とURL生成の自動化まで、その活用方法は多岐にわたります。

本記事で紹介したテクニックを実践することで、あなたはGoogleフォームのデータ収集プロセスを劇的に改善し、回答者の満足度を高め、組織全体の生産性向上に貢献できるでしょう。ぜひ、今日からこれらの方法を取り入れ、Googleフォームの真価を引き出してください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です