ここ数年で Microsoft Forms などの Web フォームでアンケートを取ることが増えてきました。いちいち回答の一覧をダウンロードして出席番号順に並べ替えたりフィルターをかけたりする作業が憂鬱で溜息が出るほど退屈なので、消失させるべく自動化の方法を調べてまとめました。
VBA は使わず、関数と条件付き書式で実現します。
Microsoft Forms と Excel のそれぞれで操作が必要です。この記事は Forms 編です。Excel 編はこちら。
本記事は、過去の記事を加筆修正したものです。
Microsoft Forms の「回答の並べ替え→抽出→色分け」を自動化する【Forms 編】 - タイダログ
動作環境
- Microsoft 365
やりたいこと
- アンケートや欠席連絡等を Microsoft Forms で受け付ける
- 回答を Excel ファイルで閲覧する
- 当日の回答だけを取り出し、「学年→クラス→番号」で自動ソートする
- 回答を学年ごとに色分けする
- 3 と4 をリアルタイムかつ自動で行う
手順
- Excel ファイルを作成する
- Excel ファイルにフォームを追加する
- Forms の回答用 URL を取得する
- 数式を入力する(Excel 編)
- カスタマイズする(Excel 編)
- Excel の閲覧用 URL を取得する(Excel 編)
- フォームの引き継ぎをする
Excel ファイルを作成する
Forms 編と言いつつ、まずはブラウザ上で Excel Online を開きます。Microsoft Office ホーム (https://www.office.com/) にサインインするとこんな画面になるはずです。
画面左端のアイコンから Excel を開いて、「新しい空白のブック」をクリックします。
画面左上からファイル名を変えましょう。後からファイルを探しやすくなります。また愛着が湧きます。
このファイルの保存場所はデフォルトでは OneDrive です。見つからなかった場合は Microsoft Office ホーム 内を探してください。
Excel ファイルにフォームを追加する
先ほど開いた Excel の画面上部の [挿入] タブに [Forms] というボタンがあると思います。なかったら Forms と Excel の連携はできません。ないんだったら自分で作ればいいのよ!諦めてください。
このボタンをクリックし、「フォームを追加」をクリックすると別タブでフォームの作成画面が開きます。思う存分編集してください。
今回は以下の質問を設定します。
- 学年
- クラス
- 番号
- 氏名
- 希望コース
- 希望日
質問のタイトルは短くすることをお勧めします(理由は後述)。「番号を入力してください」ではなく「番号」にしましょう。説明を加えたいときは「サブタイトル」が使えます。
別の言語も追加できるようです(どこかに自動翻訳機能があった気が……ブラウザの機能だったかな)。
Web フォームを用いて情報を集める際は、教育委員会や学校ごとのセキュリティポリシー等を確認の上、禁則事項に触れないようにお気をつけください。
この記事を参考にしたことによるいかなる不利益に対しても私は責任を負いません。自己責任でお願いします。
質問の設定は一度きりだと思ってください。あとから追加や変更、削除をすると、以下のページのようにめんどうなことになります。
再度このフォームを開くには、Excel ファイルの [挿入] タブ > [Forms] ボタン > 「フォームを編集」をクリックするか、Microsoft Office ホーム にアクセスしてください。
ここまででフォームの作成はおしまいです。お疲れ様でした。とはいえ、まだ作業は残っていますので、このまま次に進んでください。
回答の行き先
作業の続きの前に少し説明を。初めに作った Excel ファイルに戻ってみてください。'Form1' というシートができていて、セルが青くなっています。この領域を「テーブル」と呼びます。
先ほどのフォームへの入力内容は、このテーブルに転記されます。フォームの質問のタイトルがそのまま列の見出しになっていますね。タイトルを長くしすぎるとテーブルが見辛くなりますので短くしましょう。ちなみに「ID」から「名前」までは、フォームの質問に関係なく自動で入る項目です。
一見ただのおしゃれな色付きセルですが、強力な機能をいくつも備えています。今回関わってくる機能はこの辺りです。
- セルのアドレスではなく、テーブル名で範囲を指定できる
- 列番号ではなく、見出しで列を指定できる
- データの追加に合わせて、範囲が自動で広がる
もう少し詳しいことはExcel 編の「テーブルについて」へどうぞ。
フォームに回答を入力してみる
フォームの編集画面の「プレビュー」から回答を入力してみてください。するとテーブルにその回答が入るはずです。回答数に合わせて範囲が自動で広がり、シマシマ度合いが上がります。
※ 氏名は「なんちゃって個人情報」さんで作成しました。ありがとうございました。
なんちゃって個人情報
Forms の回答用 URL を取得する
フォームを作っただけでは意味がありませんので、回答用の URL からフォームにアクセスして回答してもらえるようにしましょう。
フォームの編集画面右上の「送信」または「共有」というボタンから、回答用の URL や QRコードを取得できます。
URL の上の「すべてのユーザーが返信可能」というのは、文字通りこの URL を知っている人なら誰でもサインインなしで回答できるということです。
ここを「自分の所属組織内のユーザーのみが回答可能」にすると、回答する際にサインインが必要になります(自動サインインできる場合もあります)。そこはめんどうですが、回答者のアカウント名が結果に載るようになるので記名式アンケートにできます。
こうして取得した URL をメールや Teams で送るなり、QR コードを印刷して配るなりメモして帰ってもらうなりしてアクセスしてもらうと、回答してもらうことができます。
Forms での操作はこれで一旦おしまいです。お疲れ様でした。このまま Excel 編へ行きましょう。
数式を入力する
Excel 編で紹介します。
カスタマイズする
Excel 編で紹介します。
Excel の閲覧用 URL を取得する
Excel 編で紹介します。
フォームの引き継ぎをする
異動や退職等に備えて、必要になったら行ってください。まあ、一から作り直してもいいと思います。
※引き継げるのは質問だけです。回答や Excel ファイルは引き継げきません。
引き継ぎと言っていますが、作成したフォームや Excel ファイルをそのまま他の人に譲渡することはできないようです。代わりにフォームを複製して、その複製フォームを使っていってもらうことになります。
引き継ぎたいフォームの編集画面右上の「送信」または「共有」ボタンをクリックし、「テンプレートとして共有」の部分で URL を取得して、引き継ぎ相手に渡してください。
その相手が URL にアクセスすると、「このフォームを複製して、独自のフォームとして使用します。」というページが開きます。
この「複製する」をクリックすると、このフォームの複製が手に入ります。タイトルは適当に変えてください。
複製を編集してもオリジナルに影響はなく、逆もまた然りです。
複製フォームができるのと同時に、引き継ぎ相手の Microsoft Office ホーム 内に、複製フォームとそれに紐付く Excel ファイルが出現します。このファイルに複製フォームの回答が転記されます(オリジナルの回答は残っていません)。このファイルにシートを追加し、数式を入力して回答用リンクを配布してください。
ちなみに、複製した Excel ファイルですが、なぜか5個に分裂したことがありました。驚愕。どのフォームとどのファイルが連携しているかわからなくなったら、直観で選ぶか、フォームの [応答] タブの「Excel で開く」をクリックしてください。
複製したフォームを再度複製して、また次の人に引き継ぐこともできます。
参考
更新履歴
- 「回答の行き先」の誤字を修正 (2022/02/01)
- 「フォームに回答を入力してみる」に、「なんちゃって個人情報」さんを使わせていただいた旨を記載 (2022/02/01)
- 画像を新しいものに差し替えるのを忘れていたので差し替え (2022/02/04)
- 「フォームの引き継ぎをする」に画像を追加し、文章を少し変更 (2022/02/04)
- 目次の下に「こちらもどうぞ」を追加 (2023/04/24)