【PowerAutomate】Teamsのチーム内の投稿・返信をExcelに自動で記録する

概要

プロジェクト内のやりとりをTeamsのチーム(複数チャネル)で行っていますが、
それらを週次のMTGで振り返りたいと思い、PowerAutomate(クラウド版)を使って、
SharePointのExcelにチーム内のチャット履歴を自動で記録するフローを作成しました。

【イメージ図】

全体フロー

以下のフローで実行できました。
事前にSherePointにExcelを作成しておく必要があります。

Excelの設定

事前に記録用のExcelファイルをSharePoint上に作成し、必要な列を作成し、テーブルを定義します。

フロー詳細

「チャットまたはチャネルに新しいメッセージが追加されたとき」

チームと、記録したいチャネル(複数登録可能)を設定します。

「For each」
「チームの特定チャネルの詳細の取得」

必須ではありませんが、Excelにチャネル名まで記録したい場合は必要になります。

「条件」

投稿か返信かを判断して分岐させます。

「メッセージ詳細を取得する【投稿】」

投稿の場合は親メッセージIDは不要です。

「メッセージ詳細を取得する【返信】」

返信の場合は親メッセージIDの設定が必要になります。

「タイムゾーンの変換」

投稿時間などを記録する場合、そのままだとUTC時間になってしまうので、日本時間に変更します。

「表に行を追加」

Excelに設定した列名が表示されるので、何を記録するかを設定していきます。
「内容」には本文のプレーンテキストを記録しますが、そのまま設定してしまうと、
エクセル上の半角スペースが「 」になるため、replace関数を設定します。
replace(outputs(‘メッセージ詳細を取得する’)?[‘body/body/plainTextContent’],’ ‘,”)