Power Automate Desktop(PAD)を使うと、Excelに保存された数十件ものデータを、社内システムなどに自動で登録することができます。手作業だと時間がかかる作業でも、PADを使えば一気に処理でき、業務効率が大幅にアップします。
この記事では、Excelテーブルを読み込み、Webシステムへ1件ずつ自動で入力・登録するフローを初心者向けに分かりやすく解説していきます。
1. 基本の考え方「順次・分岐・反復」
PADで自動化フローを作るときは、プログラミングの基本的な処理を理解しておくとスムーズです。
- 順次処理:上から順番にアクションを実行していく
- 分岐処理:条件に応じて処理を分ける(if文のイメージ)
- 反復処理:繰り返し処理を行う(For Eachが代表的)
今回使うのは 反復処理(For Each)。Excelのデータを1行ずつ読み取り、Webフォームに入力して登録していきます。
2. データテーブル型変数とは?
Excelの表データをPADに読み込むと、「データテーブル型変数」として扱われます。
例えばExcelにこんなデータがあるとします:
| 種族 | 名前 | 好物 |
|---|---|---|
| ネコ | タマ | マカロン |
| イヌ | ポチ | クッキー |
PADに読み込むと、この表がそのまま「データテーブル型変数」に入ります。
1行だけを取り出したいときは %Data[0]%
特定の列を指定したいときは %Data[0]['好物']% と書くと「マカロン」が取得できます。
3. Excelからテーブルを読み込む手順
ステップ① 新しいフローを作成
- Power Automate Desktopを起動
- 「新しいフロー」をクリックし、名前を付けて作成
ステップ② Excelを開く
- 「Excel の起動」アクションを追加
- 取得したいExcelファイルのパスを指定
ステップ③ テーブルデータを読み込む
- 「Excelワークシートから読み取る」アクションを追加
- 範囲を設定(先頭行に列名がある場合は「範囲の最初の行に列名を含む」をオン)
- 読み込んだデータは変数(例:
ExcelData)に格納されます
ステップ④ Excelを閉じる
最後に「Excelを閉じる」アクションを追加して完了です。
4. Webシステムへ1件ずつ登録する流れ
ステップ① Webページを開く
- 「新しいChromiumを起動」アクションを追加
- 対象のWebフォームのURLを指定
ステップ② ページが読み込まれるのを待つ
- 「Webページのコンテンツを待機」アクションを追加
- 入力フォームのUI要素を指定(赤枠が出たらCtrl+クリック)
ステップ③ For Eachで繰り返し入力
- 「For Each」アクションを追加し、変数
ExcelDataを選択 - 反復処理の中で「CurrentItem」が使えるようになります
%CurrentItem['種族']%%CurrentItem['名前']%%CurrentItem['好物']%
ステップ④ Webフォームへ入力
- 「Webページにテキストを入力」アクションを追加
- 各入力欄に対して、
%CurrentItem['列名']%を指定 - 最後に「Webページのボタンを押す」アクションを追加して登録
ステップ⑤ 動作確認
実行すると、Excelの1行目から順にWebシステムにデータが登録されていきます。
5. よくある質問(FAQ)
Q1. Excelの行数が変動しても対応できますか?
A. 可能です。「最初の空の列/行を取得」アクションを使うと、可変の範囲を自動で取得できます。
Q2. 入力が遅すぎるのですが?
A. アクションの「詳細設定」で「フォーカスを移動」「ページ読み込み待機」をオフにすると改善します。
Q3. エラーで入力できないときがあります
A. ページ読み込み前にアクションが動作している可能性があります。「Webページのコンテンツを待機」を必ず入れてください。
Q4. Excel以外のデータでも使えますか?
A. CSVやWebページから取得したテーブルも同じ「データテーブル型変数」で扱えます。
