【ITニュース解説】Microsoft Forms の 事前入力済みURL を深堀してみた

2025年09月02日に「Qiita」が公開したITニュース「Microsoft Forms の 事前入力済みURL を深堀してみた」について初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

ITニュース概要

Microsoft Formsには、URLに情報を追加して回答欄に値を事前設定する「事前入力済みURL」機能がある。これを使えば利用者の入力の手間を省き、アプリ名などの表記ゆれを防ぐことが可能だ。URLのパラメータで、どの質問にどの値を設定するかを指定できる。(117文字)

ITニュース解説

Webサイトでアンケートに答えたり、問い合わせをしたりする際に使われる「Webフォーム」は、情報を集めるための非常に便利なツールである。しかし、フォームを利用する人に入力してもらう際には、いくつかの課題が生じることがある。例えば、複数の製品に関する問い合わせを受け付けるフォームで、どの製品についての問い合わせなのかを利用者に毎回入力してもらうケースを考えてみよう。利用者は製品名を正確に覚えていないかもしれず、手間がかかる上に、人によって「製品A」「プロダクトA」のように表記が異なってしまう「表記ゆれ」が発生する可能性がある。これでは、後からデータを集計・分析する際に大きな障害となる。

こうした課題を解決する一つの方法として、Microsoft Formsに備わっている「事前入力済みURL」という機能が挙げられる。これは、フォームを開くためのURLに、特定の質問項目にあらかじめ入力しておきたい値を埋め込んでおく技術である。利用者がこの特別なURLをクリックしてフォームを開くと、指定された質問の欄にはすでに答えが入力された状態になっている。これにより、利用者は入力の手間が省け、フォームの提供者は正確で統一されたデータを受け取ることができるようになる。

この仕組みを理解するためには、WebのURLの構造について知る必要がある。URLは、Webページのアドレスを示すだけでなく、?&といった記号を使って、サーバーに追加の情報を送る役割も持っている。この追加情報の部分を「クエリパラメータ」と呼ぶ。Microsoft Formsでは、このクエリパラメータを利用して、「どの質問に」「どのような値を」事前に入力するかを指定している。具体的な形式は &entry.{質問ID}={事前入力したい値} という形になる。ここで重要になるのが「質問ID」である。

質問IDとは、フォームの各質問項目に内部的に割り振られた、人間には見えない識別番号のことである。フォームを作成する画面や、利用者が回答する画面を見ても、このIDはどこにも表示されていない。この隠されたIDを特定するために、Webブラウザに標準で搭載されている「開発者ツール」を使用する。開発者ツールは、通常はWeb開発者がページの構造(HTMLコード)を確認したり、動作をデバッグしたりするために使う機能だが、これを使うことでページの裏側を覗き見ることができる。

質問IDを調べる具体的な手順はこうだ。まず、Microsoft Formsで作成したフォームをブラウザで開く。次に、キーボードのF12キーなどを押して開発者ツールを起動する。そして、開発者ツールの機能を使って、事前入力したい質問項目の部分に対応するHTMLコードを探し出す。すると、そのコードの中に data-question-id という属性が見つかるはずだ。この属性に設定されている文字列が、その質問の固有IDである。

この質問IDがわかれば、あとは事前入力済みURLを作成するだけだ。まず、Formsの共有機能で通常のURLを取得する。そして、そのURLの末尾に、先ほど調べた質問IDと入力したい値を組み合わせたクエリパラメータを追記する。例えば、質問IDが r1a2b3c4d5 で、事前入力したい値が「製品X」だった場合、URLの末尾に &entry.r1a2b3c4d5=製品X と付け加える。もし複数の項目、例えば「部署名」も事前入力したいのであれば、同様に部署名の質問IDを調べ、&でつなげて &entry.r1a2b3c4d5=製品X&entry.e6f7g8h9i0=営業部 のように記述する。日本語のようなURLでそのまま使用できない文字は、ブラウザのアドレスバーに入力すると自動的に %E8%A3%BD%E5%93%81X のような形式に変換(URLエンコード)されるため、通常は特別な意識をする必要はない。

この技術を応用すれば、非常に効率的な運用が可能になる。例えば、社内で利用している複数のアプリケーションごとにマニュアル請求フォームを用意するのではなく、一つの共通フォームを用意し、各アプリケーション内に「このアプリのマニュアルを請求する」というリンクを設置する。このリンク先のURLには、そのアプリケーション名が事前入力されるように設定しておく。こうすれば、利用者は自分が今使っているアプリケーションの名前を意識したり入力したりすることなく、ワンクリックで正確な請求を行える。管理者側も、どのアプリケーションのマニュアルが請求されたのかを、表記ゆれのない正確なデータとして受け取ることができる。

このように、Webフォームという身近なツールであっても、URLの仕組みや開発者ツールといった基本的な技術を理解し活用することで、利用者の利便性を高め、データ管理の効率を飛躍的に向上させることができる。一見複雑に見えるシステムも、こうした小さな工夫と基本的な技術の組み合わせで成り立っていることを知ることは、システムエンジニアを目指す上で非常に重要である。