Excelの表を読み取り、1行ずつ処理する
Excelの見出し付き表を読み込み、各行の先頭列を順番に表示します。
画面上の名前は、表示言語やバージョンによって異なる場合があります。Desktopの例は、フロー作成時に「Power Fx を有効にする」をオフにした標準構文です。Power Fx対応フローでは式・変数参照・インデックスの書き方が異なります。このページでは変数を %変数名% と表記します。出力変数の名前を入力する欄では、前後の % は付けません。
実行前に確認
- Windows版ExcelがインストールされたPCで使います。例の C:\PA フォルダーと入力ファイルを先に用意してください。
- %CurrentRow[0]% の0は、読み取り後のデータテーブルの先頭列を指すインデックスです。Excelシートの行・列番号は1から数えます。先頭行に見出しがない表では「先頭行を列名」を無効にします。
1使うアクション
- アクション 1Excel の起動
- アクション 2Excel ワークシートから読み取る
- アクション 3For each
- アクション 4メッセージを表示%CurrentRow[0]% を表示
- アクション 5EndFor each の終わり
- アクション 6Excel を閉じる
表で見る入力と処理結果
架空データ氏名が入った表を読み取り、見出しを除いた2人の名前を順番に表示します。
Desktop:Excelブック/ワークシート
C:\PA\名簿.xlsx の、保存時にアクティブにした対象シート
以下は手順に沿った期待値です。実際のPower Automate・Excel環境で実行して確認した結果ではありません。セルや行の着目箇所には「●」を付けています。
読み取り前の表
| 行 | A:氏名 |
|---|---|
| 1 | 氏名 |
| 2 | ● 佐藤 |
| 3 | ● 鈴木 |
使用範囲 A1:A3 を %ExcelData% へ読み取り、先頭行を列名として扱います。For each 内では %CurrentRow[0]% を表示します。
期待する表示
| 処理順 | 元のセル | 表示する値 |
|---|---|---|
| 1 | A2 | ● 佐藤 |
| 2 | A3 | ● 鈴木 |
「佐藤」「鈴木」の順に表示します。元の A1:A3 は変更せず、Excelを保存せずに閉じます。
- 氏名という見出しは %ExcelData% の列名になるため、繰り返し対象のデータは2行です。
- %CurrentRow[0]% の 0 はデータ行内の先頭列のインデックスです。Excelのセル位置は A列・1行目のように1から数えます。
図で見る処理のイメージ
概念図Excelの見出し付き表を読み込み、各行の先頭列を順番に表示します。
読み取り前
氏名列:佐藤、鈴木
1行ずつ
CurrentRow で現在の行を受け取る
表示
佐藤 → 鈴木の順で表示
表の各行を個別に扱う基本形ができます。
設定例に沿った成功時の概念図です。実際の画面や実行結果ではなく、成功・配信を保証するものではありません。
設定と処理を説明する模式図です。実際の設定画面や実行結果のスクリーンショットではありません。
2実際の設定内容
入力する値・操作手順を確認する4ステップの設定と確認方法
- 1
Excel の起動:既存ドキュメント C:\PA\名簿.xlsx を開き、出力を ExcelInstance にします。対象表のシートを保存時にアクティブにしておきます。
- 2
読み取り:Excelインスタンスは %ExcelInstance%、取得は「ワークシートからすべての使用可能な値」。先頭行を列名として扱い、出力を ExcelData にします。
- 3
For each:反復処理する値を %ExcelData%、現在の項目を CurrentRow にします。内側のメッセージへ %CurrentRow[0]% を入れます。
- 4
End の後で %ExcelInstance% を「ドキュメントを保存しない」で閉じます。
- 対象環境
- Power Automate for desktop(Windows)
- 更新日
- 2026年10月11日