多くの企業や個人が日々扱う業務データの中心にあるのが「Excel(エクセル)」です。
売上管理・在庫表・顧客リストなど、さまざまな情報がExcelに蓄積されています。
しかし、データの抽出や集計を手動で行うと、時間がかかるうえにミスの原因にもなります。
そこで注目されているのが、Microsoft Power Automate(パワーオートメイト)を使ってExcelのデータを自動取得する仕組みです。
この記事では、「Power AutomateでExcelのデータを取得する方法」を中心に、クラウド版とデスクトップ版それぞれの使い方、応用事例、安定稼働のコツまでを詳しく解説します。
目次
- ✅ Power Automateとは?Excel業務を自動化できるツール
- ✅ Excelデータを取得する2つの方法
- ✅ クラウド版でExcelデータを取得する方法(Excel Online Business)
- ・前提:Excelを「テーブル化」しておく
- ・手順①:フローを作成
- ・手順②:「テーブル内の行を一覧表示」アクションを追加
- ・手順③:データをループで処理
- ・手順④:条件分岐やフィルターを設定
- ・手順⑤:取得データの活用(通知・保存・転記)
- ✅ Power Automate DesktopでExcelデータを取得する方法(セル・範囲指定)
- ・ステップ①:Excelを起動
- ・ステップ②:セルや範囲を指定して読み取る
- ・ステップ③:データをループで処理
- ・ステップ④:条件判定と自動通知を組み合わせる
- ✅ 応用例:Power AutomateでのExcelデータ取得の実践シナリオ
- ・事例①:日次売上を自動でメール報告
- ・事例②:在庫データをTeamsに自動通知
- ・事例③:アンケート結果をSharePointに自動反映
- ✅ Power AutomateでExcelデータを扱う際の注意点
- ✅ よくあるトラブルと対処法
- ✅ Power AutomateでExcelデータを取得するとできること
- ✅ まとめ:Power AutomateでExcelデータ取得を自動化すれば作業効率が劇的に上がる
✅ Power Automateとは?Excel業務を自動化できるツール
Power Automateは、Microsoftが提供する業務自動化(RPA)ツールです。
Excel、Outlook、Teams、SharePointなどMicrosoft 365の各アプリと連携でき、定型的な操作をノーコードで自動化できます。
特にExcelとの組み合わせでは、
- データの取得
- 転記
- 条件判定
- メール送信
などの作業を自動化でき、日々の作業時間を大幅に削減します。
✅ Excelデータを取得する2つの方法
Power AutomateでExcelのデータを取得する方法は、大きく次の2種類に分かれます。
| 方法 | 対応範囲 | 特徴 |
|---|---|---|
| クラウド版(Excel Online Business) | OneDrive・SharePoint上のファイル | Web上で共有しているExcelからデータを取得 |
| Power Automate Desktop(PAD) | PCローカルのExcelファイル | セル指定・複数範囲・シート操作に対応 |
クラウド上での共有データを扱うなら「Excel Online(Business)」、
PC上の業務用ファイルを扱うなら「Power Automate Desktop」を使うのが基本です。
✅ クラウド版でExcelデータを取得する方法(Excel Online Business)
クラウド版Power Automateでは、Excel Online(Business)コネクタを使用します。
この方法は、OneDriveやSharePointに保存されたExcelファイルを自動で読み取りたいときに最適です。
・前提:Excelを「テーブル化」しておく
Power AutomateでExcelデータを取得する際、テーブルとして認識されている必要があります。
手順:
- Excelファイルを開く
- 取得したい範囲を選択
- メニューの「挿入」→「テーブル」をクリック
- 「テーブル名」を設定(例:
SalesTable) - 保存して閉じる
これでPower Automateがデータを「行と列」として認識できるようになります。
・手順①:フローを作成
- Power Automateのポータルを開く
- 「自動化されたクラウドフロー」を選択
- トリガーを設定(例:「スケジュール」または「手動で実行」)
・手順②:「テーブル内の行を一覧表示」アクションを追加
- 「Excel Online(Business)」を選択
- アクションで「テーブル内の行を一覧表示」を追加
- ファイルパスとテーブル名を指定
これで、指定したテーブルの全データをPower Automate内に取得できます。
・手順③:データをループで処理
Excelの行データは配列(リスト)として取得されるため、1件ずつ処理する場合はループが必要です。
設定方法:
- 「Apply to each」アクションを追加
- 入力に「value(テーブル内の行)」を指定
- ループ内で列名を参照して値を扱う
例:1行ずつ「氏名」と「金額」をTeamsに通知
氏名: @{items('Apply_to_each')?['名前']}
金額: @{items('Apply_to_each')?['金額']}
このように、Excelの各列を参照しながら処理を自動化できます。
・手順④:条件分岐やフィルターを設定
取得したデータをすべて使うのではなく、特定条件に合う行だけを抽出したい場合は「Filter array」を使用します。
例:「金額が10万円以上のデータだけ抽出」
@greater(items('Apply_to_each')?['金額'], 100000)
条件を満たす行だけ後続の処理(メール送信・書き込みなど)に渡すことが可能です。
・手順⑤:取得データの活用(通知・保存・転記)
クラウドで取得したデータは、他アプリと連携して活用できます。
- Teamsへの自動通知
- Outlookメールへの自動送信
- 別のExcelファイルへの書き込み
- SharePointリストへの登録
このように、Power Automateを中核に据えた“データ連携の自動パイプライン”が構築できます。
✅ Power Automate DesktopでExcelデータを取得する方法(セル・範囲指定)
ローカルPC上のExcelファイルを直接操作する場合は、Power Automate Desktop(PAD)を使います。
PADは「セル番地(A1、B2)」や「範囲指定(A1:D10)」で正確にデータを取得できるのが特徴です。
・ステップ①:Excelを起動
- アクション「Excelの起動」を追加
- 「既存のドキュメントを開く」を選択
- Excelファイルパスを指定して開く
・ステップ②:セルや範囲を指定して読み取る
単一セルを取得する場合
- 「Excelワークシートから読み取り」アクションを追加
- 「単一セル」を選択
- セルアドレス(例:
A2)を指定 - 取得値を変数(例:
%CellValue%)として保持
範囲を取得する場合
- 同アクションで「範囲(例:A1:D20)」を指定
- 出力をデータテーブル型変数(例:
%ExcelData%)に設定
これにより、表全体をプログラム的に扱うことができます。
・ステップ③:データをループで処理
- 「For Each」アクションを追加
- 対象に
%ExcelData%を指定 - 各行データを変数(例:
%CurrentItem%)として参照
各列を取得する例:
%CurrentItem[0]% → A列の値
%CurrentItem[1]% → B列の値
%CurrentItem[2]% → C列の値
このように、Excelの行データを1件ずつ読み取って処理を進められます。
・ステップ④:条件判定と自動通知を組み合わせる
たとえば「在庫数が50未満ならメールで通知する」場合:
If %CurrentItem[2]% < 50 Then
Outlookメールを送信:「在庫不足アラート」
End If
このように、Excelの値を条件として業務フローを完全自動化できます。
✅ 応用例:Power AutomateでのExcelデータ取得の実践シナリオ
実務では、Excelデータを取得して他アプリと連携することで、大幅な効率化が可能です。
・事例①:日次売上を自動でメール報告
- Power Automateで売上表を取得
- 合計金額を算出
- Outlookメールで「本日の売上:○○円」を自動送信
→ 担当者が手入力することなく、報告が自動化。
参考:【Power Automate活用事例】Outlookメールを自動化して業務効率を改善する方法
・事例②:在庫データをTeamsに自動通知
- Excelの在庫リストを取得
- 残数が一定以下の品目を抽出
- Teamsに「発注が必要な商品一覧」を自動投稿
→ 担当者全員がリアルタイムで在庫状況を把握可能。
参考:【ChatGPT】 Power Automateで会話を自動化|Teamsに自動返信!
- Excelで集めた回答データをPower Automateで取得
- 各行をSharePointリストに登録
- 自動でグラフ化・可視化
→ Excelデータをそのまま企業ポータルに連携。
✅ Power AutomateでExcelデータを扱う際の注意点
| 注意点 | 内容 |
|---|---|
| テーブル化が必須(クラウド版) | Excel Onlineでは範囲指定ではなくテーブルを使用 |
| Excelファイルは閉じておく(PAD) | ファイルが開いたままだとアクセスエラーが発生 |
| データ型の違いに注意 | 文字列・数値・日付を適切に変換(int()やToString()) |
| OneDriveパスの指定方法 | ドキュメント/ファイル名.xlsx の形式で指定 |
| 複数人編集時の競合 | 同時編集を避けるか、読み取り専用で実行 |
これらの基本を押さえることで、安定したフローが構築できます。
✅ よくあるトラブルと対処法
| 症状 | 原因 | 対処法 |
|---|---|---|
| 値が取得されない | テーブル外を指定 | テーブル範囲を再設定 |
| エラーで停止する | Excelが開きっぱなし | PADで「Excelを閉じる」を追加 |
| 数値が文字として扱われる | データ型の不一致 | ToNumber()関数を使用 |
| 配列データの扱いが難しい | 構造理解不足 | 「Apply to each」ループで個別処理 |
| フローが遅い | 不要なループや書き込み | フィルターを先に設定して最小化 |
✅ Power AutomateでExcelデータを取得するとできること
| 活用例 | 説明 |
|---|---|
| データ抽出 | 条件に応じたデータのみ取得して通知 |
| レポート作成 | Excelの値を自動集計・送信 |
| データ転記 | 他システム・他ファイルへ自動登録 |
| アラート通知 | 特定条件でTeams・メール通知 |
| ダッシュボード連携 | Power BIやSharePointに自動更新反映 |
Power Automateは、単なるデータ取得ツールではなく、「データ活用の自動化基盤」として機能します。
✅ まとめ:Power AutomateでExcelデータ取得を自動化すれば作業効率が劇的に上がる
- Power Automateでは、クラウド版とデスクトップ版のどちらでもExcelデータを取得可能。
- クラウド版はテーブル単位でのデータ取得、PADはセルや範囲単位での精密操作に対応。
- データを取得した後は、Teams通知・メール送信・他システム登録などへ自在に展開できる。
- テーブル設定・データ型変換・エラーハンドリングを徹底すれば、安定的に運用可能。
Power Automateを活用することで、Excelは単なる表計算ツールではなく、
「自動で情報を集め、判断し、動くシステム」に進化します。
Excelを開く時間すら短縮し、業務の質とスピードを両立させたい方は、
まず「データ取得の自動化」から始めてみましょう。