本記事では、Power Automate Desktop(PAD)でExcelのデータを取得する方法について解説します。
(前提) 使用するExcelファイル
本記事で使用するExcelファイルは以下になります。
パスは「C:\pad-test\member.xlsx」、シートは「メンバー表」のみになっています。
Excelデータを取得するフロー
以下がExcelデータを取得する基本的なフローになります。
フロー説明
フローを構成するアクションについて、それぞれ解説します。
Excelの起動
項目 | 設定内容 |
---|---|
Excelの起動 | 空のドキュメントを使用:新規ブックを開く 次のドキュメントを開く:ドキュメントパスで指定したブックを開く |
ドキュメントパス | 開きたいExcelファイルのフルパスを指定します。 |
Excelワークシートから読み取る
項目 | 設定内容 |
---|---|
ExcelInstance | %ExcelInstance% ※デフォルト |
取得 | いずれかを選択 ・単一セルの値 ・セル範囲の値 ・選択範囲の値 ・ワークシートに含まれる使用可能なすべての値 |
例)単一セルの値
C2セルの「千葉県」だけ取り出したいとします。
この場合、3列目の2行目なので、先頭列:3、先頭行:2となります。
例)セル範囲の値
B2~B6の生年月日を取り出すとします。
この場合、2列目2行目から2列目6行目までなので、以下のように設定します。
Excelを閉じる
このアクションがなくても処理自体は成功しますが、フローを実行するたびに開きっぱなしのExcelファイルが増えてしまうため、最後は閉じるようにします。
項目 | 設定内容 |
---|---|
Excelインスタンス | %ExcelInstance% ※デフォルト |
Excelを閉じる前 | ドキュメントを保存しない ドキュメントを保存 (上書き保存) 名前をつけてドキュメントを保存 (新規ブックを作成して保存) |
以上で基本的なExcelデータ取得のフローは完成です。
シートが複数ある場合は対象のシートを指定すること
PADでExcelデータを取得する場合、アクティブになっているシートが取得されます。例えば、以下であれば「役員」シートが開かれているので「役員」シートのデータが取れます。
これでは意図したデータが取れない可能性があるので、シートが複数ある場合は対象のシートをアクティブ化させる必要があります。
項目 | 設定内容 |
---|---|
Excelインスタンス | %ExcelInstance% ※デフォルト |
次と共にワークシートをアクティブ化 | いずれかを選択 ・名前 (シート名) ・インデックス (何番目のシートか) |
取得したデータの扱い方
取得したExcelデータの操作方法について解説します。
取得したデータを別ブックに転記する
取得したExcelデータを、別のExcelブックに転記するフローです。
最初に説明した基本のフローに、以下を追加しています。
上記フローを実行すると、新しくブックが作成され、
元のExcelブックから取得したデータが転記されています。
条件に一致するデータだけ取り出す
たとえば、メンバー表のなかから東京都出身のメンバーだけ取り出したいとします。
この場合、以下のようなフローになります。
データを1件ずつ見ていく方法
「東京都出身かどうか」は、「出身」列を見て判定します。しかし、PADで取り出したExcelデータは、データテーブル型という表形式のデータになっており、このままだとうまく判定ができません。
for each
そこで、for eachを使って1行ずつデータを取り出して見ていくようにします。
if
さらに、for eachで取り出したデータのうち、if文で「出身」列だけ取り出して判定します。
ifの中身は以下のようになります。
「%CurrentItem[2]%」とありますが、「%CurrentItem%」というのはfor eachでループを回して取り出した1行分のデータです。このうち、3列目のみを取り出す場合は、0始まりのインデックスを付加します。
このフローを実行すると、出身が「東京都」のデータのみを取得することができます。
まとめ
今回は、Power Automate Desktop(PAD)でExcelのデータを取得する方法について解説しました。PADを使うと簡単にExcelデータの取得・操作ができます。
勤怠管理や、システム上の在庫管理システムとローカルの在庫管理表の突合せ、議事録テンプレートの自動作成、大量のデータから条件に一致するデータのみ抽出・・・などなど、日々の面倒な業務や、手作業では膨大な時間を要する作業などをPADのフローにすることで大幅な効率化・コスト削減が期待できます。
WindowsPCであれば無料で使うことができます。様々なRPAツールがあるなか、完全無料で使えるものは意外と少ないです。ノーコードで簡単に自動化ができますので、是非試していただければと思います。
ここがうまくいかない、こういうことをしたいけどどうやるの?という場合はお気軽にコメントやお問い合わせからご連絡ください。
コメント