SharePointリストの集計|Power AutomateでExcel出力

SharePointリストの集計|Power AutomateでExcel出力

毎週月曜の朝、SharePointリストに溜まった1週間分の申請や案件のデータをひとつずつ確認し、Excelに転記してTeamsで共有する作業に追われていないでしょうか。

件数が少ないうちは数分で終わっても、登録が増えるほど確認漏れが起きやすくなり、担当者が休むと集計そのものが止まってしまうこともあります。

SharePointリストは入力や検索には向いていますが、集計した週次レポートとして関係者に届ける形式ではないため、Excelへの落とし込みが必要です。

この記事ではPower AutomateでSharePointリストのデータを週次で自動的にExcelへ書き出し、Teamsで共有するまでの完成イメージと作り方を整理しています。

あわせて、対象データの件数が多いときに気をつける点も紹介します。

週次レポートの自動化を相談する

完成イメージ

作るフローは、毎週決まった曜日にSharePointリストから対象期間のデータをまとめて取得し、Excelのレポート用シートへ書き込んだうえでTeamsのチャネルへ完成を知らせる仕組みです。

SharePointリストは案件一覧や申請一覧といった日々の入力先としてそのまま使い、集計と共有だけをExcelとTeams側に任せる構成を想定しています。

毎週同じ形式のレポートを決まった曜日に届けたい業務であれば、業種を問わず同じ組み方を流用できます。

SharePointリスト自体の運用や入力ルールを変える必要はなく、既存のExcelレポート作成の工程だけを自動化する点が、手動運用との一番の違いです。

作り方の手順

スケジュールトリガーの設定、SharePointリストからの項目取得、Excelへの書き込み、Teamsへの投稿という4つのStepで組み立てます。

以下で紹介する項目名やボタンの表記は、Power AutomateやSharePoint、Excelのバージョンによって多少異なる場合があるため、随時読み替えてください。

Step1. スケジュールトリガーを設定する

「フローの作成」から「スケジュール済みクラウドフロー」を選び、繰り返しの間隔を「1週間ごと」に設定します。

毎週月曜の朝にレポートを届けたい場合は、開始時刻と曜日をあわせて指定するだけで、あとは同じ曜日・同じ時刻に自動的に実行される仕組みです。

取得対象を先週分のデータに限定したい場合は、次のStepの日付条件とあわせて設定する仕組みです。

Step2. SharePointリストから対象期間の項目を取得する

SharePointコネクタの「複数の項目の取得」アクションを追加し、対象のサイトとリストを指定します。

「フィルタークエリ」で更新日時や登録日が過去7日以内の項目だけに絞り込むと、先週分のデータだけを次のStepに渡せます。

このアクションには既定の取得件数の上限があり、対象リストの規模によっては設定の見直しが必要です。

件数が多い場合の具体的な対処は、後半の「件数が多いときの注意」であわせて解説します。

Excelに入力したデータを反対にSharePointリストへ登録したい場合は、次の記事もあわせて確認してください。

Step3. Excelへの書き込み

Excel Onlineコネクタの「テーブルに行を追加」アクションを使い、Step2で取得した項目を1件ずつレポート用のExcelテーブルへ書き込みます。

複数件をまとめて処理するため「Apply to each」でこのアクションを囲む形になり、件名や担当者などSharePointリストの列をそのままExcelの列に対応づけます。

週ごとに新しいシートを作らず、同じテーブルへ追記していく構成にしておくと、後から過去分の履歴を追いやすい構成です。

Step4. Teamsへの投稿

Microsoft Teamsコネクタの「チャットまたはチャネルでメッセージを投稿する」アクションを追加し、レポートの作成が完了したことと対象件数を知らせるメッセージを投稿します。

Excelファイルへのリンクを本文に含めておくと、Teams上から詳細のレポートへすぐに移動できる形です。

集計済みの数値だけを毎朝Teamsに届ける組み方もあり、次の記事で扱っています。

SharePointリストから週次レポートを自動作成する手順の4ステップ。スケジュールで起動→対象データを取得→Excelへ書き込み→Teamsへ投稿

件数が多いときの注意

SharePointリストの対象件数が多い場合、既定の設定のままでは一部の項目が取得できないことがあるため、件数に応じた対処が必要です。

「複数の項目の取得」アクションには既定の取得件数の上限があり、リストの件数がその上限を超えると、一部の項目が抜け落ちた状態でレポートが作られてしまいます。

上限は設定画面から変更できるため、まずは対象リストの想定件数を確認したうえで調整するのが基本の対処になります。

状況

対処

効果

対象件数が数百件程度

取得アクションの設定で上限件数を引き上げる

1回のフロー実行で全件取得できる

対象件数が数千件規模

フィルタークエリで期間や条件をさらに絞り込む

取得件数自体を減らし処理を軽くできる

フローの実行時間が長くなってきた

取得と書き込みの処理を分割し夜間などに実行時間をずらす

業務時間中への負荷を避けられる

どの対処が適切かは対象リストの規模次第のため、まずは想定件数を確認してから設定を調整するとよいです。


週次レポートの作成、まだ手作業で回していませんか?

「SharePointリストの確認とExcelへの転記に毎週時間を取られている」「担当者が変わるたびに集計のやり方を教え直している」「件数が増えてきて手作業では追いつかなくなってきた」

少しでもお心当たりがあれば、お気軽にご相談ください。

現在、Power Automateの業務自動化に関するお悩みをお伺いする 無料の個別相談 を実施しています。

よくある質問

Q. SharePointリストではなく、Excelで管理している一覧からも同じフローを作れますか。

可能です。

Step2のアクションをExcel Onlineコネクタの「表内に存在する行を一覧表示」に置き換えれば、以降のStepはほぼそのまま使えます。

Q. 週次ではなく月次のレポートに変更することはできますか。

できます。

Step1のスケジュールトリガーの繰り返し間隔を「1か月ごと」に変更し、Step2のフィルタークエリの期間条件も月単位に合わせて調整すれば、同じ構成のまま月次レポートへの切り替えが可能です。

Q. Excelのレポートを毎回新しいファイルとして作りたいのですが。

Step3の前に、テンプレートファイルを複製するアクションを追加すれば実現できます。

ただし管理するファイルの数が週ごとに増えていくため、まずは同じテーブルへの追記で運用し、必要になった段階で切り替えるほうが扱いやすいです。

Q. 取得できる項目数の上限を確認する方法はありますか。

「複数の項目の取得」アクションの設定画面にページネーションの項目があり、そこで既定の上限と変更方法を確認できます。

正確な上限値は利用しているPower Automateの環境によって変わるため、設定画面で確認するのが確実です。