
「Teamsの投稿内容をまとめてExcelで管理したい…」
そんな悩みを抱えている方、多いのではないでしょうか?
実は、Teamsには投稿を直接エクスポートするボタンはありません。でも、いくつかの方法を組み合わせることで、Excelへの取り込みが可能です。
この記事では、初心者の方でも安心して操作できるように、順を追って丁寧に解説していきます。
方法1:Power Automateで自動的にExcelへ保存
Step 1. Power Automateにアクセス
まず以下のリンクからPower Automateにアクセスします。
👉 https://make.powerautomate.com
Microsoftアカウントでログインしてください。(Teamsと同じアカウントです)
Step 2. 「自動化されたクラウド フロー」を作成
1. 左メニューの「マイ フロー」→「+ 新しいフロー」→「自動化されたクラウド フロー」をクリック
2. フローの名前を入力(例:「Teams投稿をExcelに保存」)
3. トリガーに「Microsoft Teams – メッセージが投稿されたとき(When a new message is added to a channel)」を選択
4. 「作成」をクリック
Step 3. 投稿を取得するチームとチャネルを選ぶ
• チーム名:保存対象のチームを選びます(例:営業部)
• チャネル名:投稿を保存したいチャネルを選びます(例:日報)
Step 4. Excelファイルを準備
Power Automateで扱えるExcelは、「OneDriveまたはSharePointにあるExcelファイル」です。
1. OneDriveに移動(https://onedrive.live.com)
2. 新規でExcelファイルを作成(例:teams_log.xlsx)
3. 最初のシート(例:Sheet1)に以下の列を作ります
(↓例)
投稿日時 | 投稿者 | メッセージ内容 |
※ヘッダー名はそのまま。A1〜C1にそれぞれ入力しておきます。
4. Excelファイルを保存し、閉じます。
シート基本構成の補足
これは以下の理由でよく使われています。
Excel列名 | 内容の意味 | Power Automateで取得できる? |
---|---|---|
投稿日時 | 投稿された日時 | (createdDateTime) |
投稿者 | 投稿したユーザー名(またはメール) | (from.user.displayName) |
メッセージ内容 | 実際の投稿本文 | (body.content) |
👉 この3項目はどの方法でも共通して取得できる標準情報のため、最初の学習には最適です。
列を増やしてもOKです
たとえば、次のような列を追加しても構いません。
列名 | 取得できる? | 補足 |
---|---|---|
チーム名 | △(手動で指定) | フロー内で定数として追加可能 |
チャネル名 | △(手動で指定) | 同上 |
返信数 | △(加工必要) | 返信メッセージがある場合にカウント可能 |
メッセージID | ✔️ | Graph APIでは取得できるが表示不要な場合も |
添付ファイル有無 | ✔️ | attachmentsの存在で判断できる |
⚠️注意:Power Automateで扱うには「テーブル化」必須!
Excel側で以下を設定することが大前提です。
① Excelファイルを保存する(.xlsx形式)
② データのある範囲(例:A1:C1 + 空行)を選択
③ メニュー「テーブルとして書式設定」→「ヘッダーあり」を選択
④ テーブル名(例:Table1)を覚えておく
つまり、列名は自由にしてもいいですが、Power Automateの「行の追加」で、そこに正しくデータを流し込めるようにしておく必要があります。
Step 5. Excelへの書き込みアクションを設定
- Power Automateのフロー編集画面で「+ 新しいステップ」をクリック
- 「Excel」と検索して「Excel Online(Business)」→「行の追加」を選択
- 以下のように設定します
- 場所:OneDrive for Business
- ドキュメントライブラリ:OneDrive
- ファイル:先ほど作成したteams_log.xlsx
- テーブル名:自動的に「Table1」などと表示されるはずです(表示されない場合はExcelファイル側で「テーブルとして書式設定」してください)
- 各フィールドを埋めます
Excel列名 | 入力内容(動的コンテンツ) |
---|---|
投稿日時 | Message created date/time |
投稿者 | From |
メッセージ内容 | Message body content |
- 保存してフローを有効化!
Step 6. 投稿テストして確認!
Teamsの該当チャネルに投稿してみましょう。数分後、自動でExcelに1行追加されているはずです。
方法2:手動でコピー&Excel貼り付け(超カンタン)
一番手軽な方法が「コピペ」です。
手順
- Teamsを開き、対象のチャネルを表示
- 欲しい投稿部分をドラッグして選択
- Ctrl+Cでコピー
- Excelを開いて、Ctrl+Vで貼り付け
貼り付け後は整形が必要。日付・投稿者・本文がごちゃっと入るため、必要に応じて列を分けましょう。
方法3:チャネルの「メールアドレス」を使う方法
Teamsのチャネルには、メールアドレスが存在します。
手順
- Teamsでチャネルを開く
- 「…(その他)」→「メールアドレスを取得」をクリック
- そのアドレスに投稿内容を転送すると、メールで届きます
- Outlookの「ファイル」→「エクスポート」→「CSV形式」で保存
- Excelで開いて整形すればOK!
⚠ Outlookがインストールされている必要があります。
方法4:Microsoft Graph APIで取得(開発者向け)
Teamsの投稿をプログラム経由で取得したい場合は、Microsoft Graph APIを利用する方法があります。これにより、チャネル内の投稿内容をJSON形式で取得し、自動処理やデータ分析に活用することができます。
ただし、利用にはいくつかの前提があります。
- Microsoft 365 開発者アカウント(またはAzure Active Directoryテナント)
- Graph APIを実行するためのアプリ登録
- 適切な権限(例:ChannelMessage.Read.All)
具体的には、以下のエンドポイントを使用します。
GET https://graph.microsoft.com/v1.0/teams/{team-id}/channels/{channel-id}/messages
このURLで、指定したTeamsのチャネルに投稿されたメッセージ一覧を取得できます。応答はJSON形式で、各投稿の内容(本文・投稿者・日時など)が含まれます。
例:Pythonで取得しCSVに変換するイメージ
import requestsimport pandas as pdtoken = 'Bearer YOUR_ACCESS_TOKEN'url = 'https://graph.microsoft.com/v1.0/teams/チームID/channels/チャネルID/messages'headers = { 'Authorization': token}response = requests.get(url, headers=headers)data = response.json()# 投稿内容を整理してDataFrameに変換messages = []for item in data['value']: messages.append({ '投稿日時': item['createdDateTime'], '投稿者': item['from']['user']['displayName'], 'メッセージ': item['body']['content'] })df = pd.DataFrame(messages)df.to_csv('teams_messages.csv', index=False, encoding='utf-8-sig')
上記のように、Graph APIで取得した投稿をCSVに変換すれば、そのままExcelで開いて分析や整理が可能になります。
ただし、Graph APIの利用には技術的な知識や事前準備が必要です。初めて利用する方は、まずはMicrosoft Learnなどの公式ドキュメントを参考に、環境構築から始めることをおすすめします。
今回ご紹介した方法は、いずれもTeams投稿をExcelに落とすための現実的な手段ですが、「そもそもなぜ投稿をExcelにまとめたいのか?」という視点もとても重要です。
たとえば、チーム内で行っている日報・週報の共有。これらの情報をあとから振り返るには、チャネルをスクロールして探すよりも、Excelで一覧にしたほうが断然便利です。また、時系列で並べて、業務の進捗や課題の傾向を見える化することも可能になります。
また、教育機関やサポート業務などで、複数のスタッフが記録を残している場合、投稿内容を自動で集計できるようにしておくと、作業負担の軽減にもつながります。とくにPower Automateで一度フローを構築しておけば、後は投稿されるたびに自動で記録されるため、ヒューマンエラーや抜け漏れも防げます。
さらに応用としては、ExcelとPower BIを連携させて、Teamsの投稿内容を可視化することも可能です。たとえば、ポジティブな投稿が多かった日をハイライト表示する、メンバー別に投稿数を分析するなど、データ分析の入口としても活用できます。
一見地味に思える「Teamsの投稿をExcelに落とす」という作業ですが、使い方次第では、チーム全体の生産性や透明性をぐっと高めることができます。今後も業務効率化に役立つ小技や裏技を紹介していきますので、ぜひブックマークしておいてくださいね。
まとめ
方法 | 難易度 | 特徴 |
---|---|---|
Power Automate | ★★★☆☆ | 自動化できるが設定がやや複雑 |
手動コピー | ★☆☆☆☆ | 簡単・整形は手作業 |
メール活用 | ★★☆☆☆ | CSV経由でエクスポート可能 |
Graph API | ★★★★★ | 技術が必要・自動化向け |
Teamsの投稿内容をExcelで整理したい場面は、実はたくさんあります。
一見できなさそうに見えますが、工夫すれば実現可能です。
「Power Automateでの設定が難しい…」という方のために、テンプレート化したPower Automateフローや、Excelテンプレートも今後ご紹介していく予定です!
👉 Microsoft Teamsをもっと活用したい方へ
【スポンサーリンク】
Teamsの使い方や便利な機能を解説した書籍をまとめてチェックできます。初心者にもわかりやすい解説本から、今すぐ仕事で使える応用テクニック本が満載!→ Teams関連の書籍一覧を見る
【おすすめ記事】
▶︎WordやExcelが急に起動しない?Officeトラブルの対処法
▶︎Office365 Excelで「合計」などの表示が右下で切れるときの対処法
▶︎誰でもできる!紙データを一瞬でWord・PDFにするGoogleレンズ×Windowsの神ワザ方法
🌸 姉妹サイトのご紹介
オリジナルカレンダーやシフト表などを無料で配布中です。
よかったら、私のイラストサイト「きみよの部屋」も、のぞいてみてくださいね🐦