Excelのテーブル~Power Platform関連へ


はじめに

 Power Platformの各サービスから接続できるデータの保管先の代表例としては、SQL Server等データベースやCSVやExcelなど各種デスクトップファイルなど多種多様にあります。
 ここでは、基本的な動きの理解のために、画面のようなごく簡単な例として、Excelをデータの保管場所として使う例を書きます。

Excelでのテーブルの書式

 サンプルのExcelファイルを作るために、Microsoft 365のポータルである https://office.com にあるアプリ一覧から[Excel]を選択し、「新しい空白のブック」を作成します。

図のように見出しと15行程度のサンプルデータを準備します。

範囲を選択し、[ホーム]タブ、[テーブルとして書式設定]より、テーブルとして認識させます。

[デザイン]タブの「テーブル名」で名前を変更できます。

OneDrive上に保存して閉じます。

Power AutomateからExcelに書き込む。

 「Formsから投稿があったら、Power Automate経由でExcel Onlineに記録。合わせてTeamsに通知」してみましょう。

Formsでフォームを作成

 Microsoft 365 ポータル https://office.com のアプリ一覧から[Forms]を選択し、2項目のフォームを作成します。

Power Automateからの連携

 Microsoft 365 ポータル https://office.com のアプリ一覧から[Power Automate]を選択します。作成から[自動フロー]を選択します。

 自動フローの作成では、フロー名を入力し、フローのトリガーを選択では、データの入力をFormsにするので、[新しい応答が送信されるとき]とします。

 プルダウンから対象のフォームを選択します。

 続いてのアクションの選択では、キーワードを入力します。ここでは、Formsの処理を続けるので「Forms」と入力すると、候補が絞られます。「応答の詳細を取得する」を選択します。前と同様にプルダウンから対象のフォームを選択します。

 応答IDは、動的なコンテンツに1つ候補があるので選択します。

 次のアクションでは候補に、Excel Onlnineが見えているので選択し、「表に行を追加」を選択します。

 こちらのプロパティの設定は、ファイルの保存場所等を選択します。

 テーブル名まで選択すると、テーブル内のフィールドが表示されます。この中で、NameとOverviewを選択します。Formsの候補があるので、登録します。連携しない項目のCountはそのままで

 これでFormsからデータが送られたらExcelを更新する処理は終わりです。
 次のステップで、Teamsの通知を作成しましょう。「Microsoft Teams」を選び、「メッセージをフロー ボットとしてチャンネルに投稿する」を選択します。
 メッセージを投稿するチームやチャネルを指定し、メッセージ本文等を指定します。

 保存して、右上の「テスト」から、「トリガーアクション」を実行するを選択し、「保存&テスト」を実行します。こちらでデータの受付待ち状態になります。

Formsからテスト投稿

 先ほどのFormsに戻り、「プレビュー」でフォームを実行し、データを入力して、送信します。

 Power Automateに戻ると正常に実行されたことがわかります。

 Teamsを確認すると...

 実行されていますね。HTMLタグが指定されていないので、1行になっています。

 Excelはどうでしょう?記録されているか見てみると...

更新されていますね~ Excel Onlineだとブラウザ上で開いていても、Power Automateからの更新を受けます。

Power Appsからの連携

 次にPower Appsからアプリを作ってみましょう。Microsoft 365 ポータル https://office.com のアプリ一覧から[Power Apps]を選択します。データから開始で、[Excel Online]を選択します。
 OneDriveに接続し、サンプル記録のExcelのテーブルを指定し接続します。
そうすると、20秒ほどで...

アプリが完成します。
このアプリのプレビューを確認してみると

スマホがPC上で動いているイメージでアプリが動きます。

右上の「+」からは新規登録ができるかやってみましょう。

右上の「v」で投稿が完了し、一覧で「石川」で絞ると、登録されていますね。

Excelで記録を確認します。

登録されていますね。一番右の列は、Power Appでアプリを作った場合に自動で作られるものです。
アプリのプレビュー実行は、右上の「x」で閉じ、アプリのカスタマイズを行う画面で、テーマを変えたり、機能を改良したりできます。


アプリを保存しましょう。[ファイル]タブから[設定]で名前等を指定し、[保存]します。

[共有]を押と、組織内の誰とアプリを共有するか等指定できます。自分自身や指定した相手にはスマホのPower Appsアプリからアプリを呼び出して利用できます。

Power BIからの連携

 続いて、Power BIからレポートを作ってみましょう。Microsoft 365 ポータル https://office.com のアプリ一覧から[Power BI]を選択します。
Power BIのホーム画面左下から「データを取得」を選択し、「新しいコンテンツの作成」から「ファイル」の取得を選択します。

[OneDrive - Business] を選択します。

該当のExcelを選択し、[接続]します。

次の画面でインポートします。

作成された「データセット」(オレンジ色のデータベースアイコン)からの詳細(コンテクスト・メニュー)から「レポートの作成」をクリックします。

「フィールド」ウィンドウから「Count」、「Name」の順にチェックします。すると、レポートエリアに「集合縦棒グラフ」ビジュアルが表示されます。サイズはPowerPoint同様の操作で整えられます。

このビジュアルが選択された状態で、「視覚化」の書式からタイトルを変更したり表示を整えることができます。

今度はこのビジュアルが選択されている状態で、コピペ(Ctrl + C, Ctrl + P)とショートカットで実行しましょう。そうするとビジュアルを複製されます。「視覚化」ウィンドウから「テーブル」を選びます。

テーブルの字のサイズの書式等を整えます。

テーブルではCount列の合計行が表示されています。

集合棒グラフの一部をクリックすると、テーブルも連動してフィルタされることがわかります。

今度はビジュアルが何も選択されていない状態で、「視覚化」ウィンドウから「カード」を選びます。その後、「Name」を選ぶと、Excel野中の最終行が選択されています。「視覚化」ウィンドウの「フィールド」から「カウント」を選択します。

今は、集合縦棒グラフで、「石川 陽一」という値のものが2件と絞り込まれているので、空白エリアをクリックして、フィルタを解除すると全体の件数が表示されます。

このレポートを「保存」ボタンから保存します。

同様にして並び替え等を行い整えます。

再び編集するときは[編集]ボタンから行います。

おわりに

 以上、Excelのテーブルに、Power Platformの代表的なサービスであるPower Automate(iPaaS; Integration Platform as a Service)、Power Apps(アプリ開発)、Power BI(BI)でアクセスする基本的な方法でした~。
 本メモの最初のドラフトを書いたのが2020/12頃です。画面等が一部古い可能性があります。対応方法の考え方のみ読み取っていただき、実際の設定等は、最新の内容に読み替えて対応してください。