Formsに回答があったら、Power AutomateでSharePointリストに格納して、Power BIで自動集計するんだよ。
この記事では、Formsのアンケート結果を、PowerAutomateを使ってSharePointリストに自動で格納し、Power BIで自動集計する方法を解説します。
- Formsでできること、できないこと
- Formsの回答結果を自動集計する全体イメージ
- Power Automateで、Formsの回答をSharePointリストに格納する方法
- Power BIでSharePointリストのデータを取得する方法
YouTube動画で見たいかたは、こちらからどうぞ!
Formsとは?
Formsは、簡単にアンケートや問い合わせ等のフォームを作れるツールです。
難しい操作は必要なく、誰でも直感的にフォームを作成でき、相手にリンクを共有することで、フォームに回答してもらうことができます。
例えば下図のように、簡単にアンケートフォームが作成できます。

またForms自体も簡単な集計結果をグラフで出してくれます。

Formsの結果はExcelに保存され、「Excelを開く」をクリックすることで、保存されたFormsの回答結果をエクスポートすることができます。
Formsで回答結果の自動集計ができるし、Excelでエクスポートもできるのに、何故Power Automateを使う必要があるのですかな?
簡単なアンケートだけならFormsだけで十分だけど、細かい分析はFormsだけではできないんだ。
- 細かい分析はできない
- Excelは手動で保存する必要がある
細かい分析をしたい場合や、定期的に取るアンケート等で、定期的な集計もしたい場合は、毎回手動でExcelを保存するのは面倒です。
これらの問題点を解決するため、PowerAutomateや、PowerBIを使います。
- Power BIを使って集計する
- Power AutomateでSharePointリストに自動登録する
集計はPowerBIを使ってレポート化し、自動更新します。
Forms結果のExcelを手動で保存する代わりに、Power Automateを使って、Formsの投稿があるたびに、SharePointリストに自動登録すれば、Forms投稿の集計が全て自動化できます。
Formsのアンケート結果を全自動で集計するイメージ
Formsのアンケート結果を全自動で集計するイメージ図をまとめました。

- Formsにアンケートの投稿をトリガーにして、Power Automateを実行
- Power Automateは、Formsで投稿された情報を取得し、SharePointリストに登録
- Power BIでSharePointリストのデータを取得し、レポートを作成、Power BIサービスに発行し、自動更新設定
今回のFormsは以下のような簡単なアンケートを用意しました。

Formsで保存されたExcelをエクスポートすると、以下のような感じでデータが保存されています。

今回はアンケートの設問を3つ作成したので、SharePointリストでも設問ごとに回答を格納する列を作成します。
Forms投稿を、Power AutomateでSharePointリストに自動で格納する方法
それでは、Power Automate画面でForms投稿をSharePointリストに自動で格納する方法を解説します。
「新しいデザイナー」でのPower Automateフロー実装方法は、以下の記事を参考にしてください。

1.Formsの回答データを格納するための、SharePointリストを作成します。
今回は3つの設問用に、以下3つの列を用意しました。
※ID列は、SharePointリストにデフォルトで存在する列を表示しています

※上記のリストは実際に、Formsの回答データが格納されたイメージです
2.Power Automateを開き、作成>自動化したクラウドフローを選択します。

3.フロー名を入力し、トリガーでFormsの「新しい応答が送信されるとき」を選択し、作成をクリックします。

4.トリガーの「新しい応答が送信されるとき」のフォームIDで、自分で作成したFormsのフォーム名をドロップダウンから選択します。
続いて、「新しいステップ」をクリックします。

5.新しいステップでは、Formsの「応答の詳細を取得する」を選択します。
これはFormsで回答があった内容の詳細データを取得するアクションです。

6.フォームIDは、3.と同様に自分で作成したフォーム名を選択します。
応答IDの入力欄をクリックすると、動的なコンテンツが表示されます。
応答IDとは、Formsの回答の内、どの回答データを取得するか特定するための一意の識別子です。

7.動的なコンテンツで、最初のトリガー「新しい応答が送信されるとき」の「応答ID」を選択します。
これにより、Formsの回答があったらそれをトリガーにPower Automateフローが開始され、その時のForms回答データを、この応答IDで取得することができます。

8.次に取得したForms回答データをSharePointリストに格納するため、「新しいステップ」を追加します。
SharePointを選択し、「項目の作成」を選びます。

9.サイトアドレスはSharePointサイト名、リスト名は、作成したSharePointリスト名をドロップダウンで選択します。
SharePointリストを選択すると、自動で登録できる列が表示されるので、列の入力フォームをクリックすると、動的なコンテンツが表示されます。

10.動的なコンテンツで、一つ前のステップ「応答の詳細を取得する」で、Formsの設問の回答データが取得できます。
SharePointリストのそれぞれの設問用に用意した列に、対応するForms回答データを選択します。

11.全ての設問用のSharePoint列に、動的コンテンツでForms回答データを設定したら、フローは完成なので、「保存」をクリックします。

12.フローが完成したら、Formsのプレビューから回答して、フローが実行されるかテストします。
フローの実行結果は、実行履歴に表示され、状況欄が「成功」となっていれば、フローが正常に実行されています。
各実行結果をクリックすると、フローの詳細な実行結果をみることができます。

13.例えばForms回答時に、実際にどのようなデータが取得され、SharePointリストにどのようなデータが登録されたか、詳細をみることができます。

これで、Formsの回答を自動でSharePoitnリストに格納する、Power Automateフローは完成です!
Power Platform開発・学習支援のご相談については、以下のページをご覧ください。

Power BIでFormsアンケート結果を分析し、自動更新する方法
次に、Power BIでSharePointリストのデータを取得し、自動更新する方法を解説します。
1.Power BIデスクトップアプリを起動し、ホーム>データを取得>詳細をクリックします。

2.SharePointで検索し、SharePoint Onlineリストを選択し、接続をクリックします。

3.SharePointリストを作成したサイトの、ホームタブを選択し、URLをコピーします。

4.接続先のSharePointリスト情報に、以下のデータを入力し、OKをクリックします。
- サイトURL
- 3.でコピーしたURL
- 実装
- 2.0を選択
- 詳細オプション>表示モード
- 規定-SharePointリストの”規定のビュー”に設定されている列を取得しますを選択

実装「2.0」、表示モード「SharePointリストの”規定のビュー”~」を選択すると、取得対象のデータを、現在SharePointリストで表示している列のデータに絞ることができます。
5.このとき認証画面が出たら、Microsoftアカウントから自分のアカウントにサインインし、接続をクリックして認証します。

6.取得するSharePointリストを選択し、データの変換をクリックします。

7.Power Queryエディタが開くので、データの変換後、閉じて適用をクリックします。
Power Queryエディタでのデータの変換方法は、以下の記事を参考にしてください。


8.Power BIデスクトップでレポート作成後、発行をクリックし、Power BIサービスの任意のワークスペースに発行します。

9.後はPower BIサービスで自動更新設定をします。
Power BIサービスでデータの自動更新設定をする方法は、以下の記事を参考にしてください。

まとめ
今回の記事では、Formsのアンケート結果を、Power AutomateでSharePointリストに自動で格納し、Power BIで自動集計する方法を解説しました。
これにより、Forms回答結果を全自動で集積することができます。
Power BIでFormsの回答データを変換する方法については、以下の記事にまとめます。

Power Automateを使うと、例えばFormsでのイベント参加の申込時に、参加するイベント詳細をメールで自動返信したいときにもPower Automateを使うことができます。
Power Platform連携の利用例については、以下の記事も参考にしてください。

今後、色々が作業を自動化するための、具体的なPowerAutomateの実装方法を紹介していきます!