Power Automate Desktop Excelのデータを読み込みループで1行ずつ処理する
次の表を読み込んで1行ずつ、何らかのアクションを行うフローを紹介します。
手順
Robin言語(コピー&ペースト用)
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''C:\\Test\\Data.xlsx''' Visible: False ReadOnly: False Instance=> ExcelInstance
Excel.SetActiveWorksheet.ActivateWorksheetByName Instance: ExcelInstance Name: $'''Sheet1'''
Excel.ReadFromExcel.ReadAllCells Instance: ExcelInstance ReadAsText: False FirstLineIsHeader: True RangeValue=> ExcelData
Excel.CloseExcel.Close Instance: ExcelInstance
LOOP FOREACH CurrentItem IN ExcelData
Display.ShowMessageDialog.ShowMessage Message: $'''%CurrentItem['№']%
%CurrentItem['商品名']%
%CurrentItem['価格']%''' Icon: Display.Icon.None Buttons: Display.Buttons.OK DefaultButton: Display.DefaultButton.Button1 IsTopMost: False ButtonPressed=> ButtonPressed
END
フロー作成
「Excelの起動」で対象のブックを開きます。
項目 | 設定値 |
---|---|
Excel の起動 | 次のドキュメントを開く |
ドキュメント パス | 操作対象のExcelブック |
「アクティブなExcelワークシートの設定」を設置します。
項目名 | 設定値 | 備考 |
---|---|---|
Excel インスタンス | %ExcelInstance% | 「Excel の起動」の生成された変数 |
次と共にワークシートをアクティブ化 | 名前 | |
ワークシート名 | Sheet1 | データを読み込むシート名 |
「Excel ワークシートから読み取り」を設置します。
項目名 | 設定値 | 備考 |
---|---|---|
Excel インスタンス | %ExcelInstance% | 「Excel の起動」の生成された変数 |
取得 | ワークシートに含まれる使用可能なすべての値 | |
範囲の最初の行に列名が含まれます | オン | 表の先頭行が見出しでなく、データ行の場合はオフにします。 |
「Excelを閉じる」を設置します。
項目名 | 設定値 | 備考 |
---|---|---|
Excel インスタンス | %ExcelInstance% | 「Excel の起動」の生成された変数 |
「For each」を設置し、反復処理を行う値に%ExcelData%(「Excel ワークシートから読み取り」で生成された変数)を設定します。
「For each」の中に1行ずつ行うアクションを設定します。
生成された変数の%CurrentItem%に1行のデータが格納されています。
「Excel ワークシートから読み取り」「範囲の最初の行に列名が含まれます」が
ONの場合は、次のように項目名で個々の列の値を取得可能です。
%CurrentItem['№']%
%CurrentItem['商品名']%
%CurrentItem['価格']%
OFFの場合は、次のように先頭を0とする連番で個々の列の値を取得可能です。
(ONでも可能です)
%CurrentItem[0]%
%CurrentItem[1]%
%CurrentItem[2]%
Power Automate Desktopを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。
Word-A4サイズ:1,700ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方から各アクションの詳細な使い方、
頻出テクニック、実用例を紹介。(目次)
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。(更新履歴)
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。