LoginSignup
3
1

More than 1 year has passed since last update.

Power Automate DesktopでExcelを自動集計化

Last updated at Posted at 2022-10-08

はじめに

Power Automate Desktopで複数のExcelを自動集計してみました。

使ったサービス

Power Automate Desktop
Excel

出来上がり

こんな感じになります。

Excelへの反映状況はこちらを参照願います。

【全体の構成】動画の文字内容です。
Power Automate Desktopにて、複数のフォーマットが同じExcelファイルを
集計用のシートに集約して、別シートにフォーマットと関数を準備する事で、
必要な形に自動集計しています。

自動処理のフローは次の通りです。
1)集計用のExcelを起動、データを書き込むシートをアクティブに設定
2)集計元のフォルダから、全ての集計元Excelを取得<今回は3ファイル>
3)次の処理を全ての集計元Excelに対して繰り返し実施
 ①Excelからデータを読み取り
 ②Excelからデータをコピー
 ③集計用のExcelに書き込み
4) 集計用のExcelに上書きして保存

作り方

Power Automate Desktopで、左の赤枠にあるアクションを真ん中のペインのMainにドラッグ&ドロップして、次のフローを作成します。
image.png

1.集計表を自動で開く
アクション『Excel』より「Excelの起動」をドラッグ&ドロップして、ドキュメントパスでファイルを設定します。この操作でExcellnstanceというデータが生成されます。
クリックすると%Excellnstance%となっており、%で囲まれた文字は変更できます。
以下、データは%で括って記載すると共に、名前を変更している前提でお読みください。
image.png

2.集計表でデータをコピペするシートを指定
アクション『Excel』より「アクティブなExcelワークシートの設定」をドラッグ&ドロップしてシートを設定します。
image.png

3.集計するフォルダを指定
アクション『フォルダー』より「フォルダー内のファイルを取得」をドラッグ&ドロップして、フォルダーを設定します。
この時、ファイルフィルターを「*.xlsx」と設定する事で、フォルダー内の全てのExcelを取得できるようにします。
この操作で、%tenpoFiles%というデータが生成されます。(名前は変更しています)
image.png

4.繰り返し処理の設定
アクション『ループ』より「For each」をドラッグ&ドロップして、繰り返すデータを指定します。{x}を押して前の工程で生成された%tenpoFiles%を指定します。
この操作で、%CurrentItem%というデータが生成されます。
image.png

5.(繰り返し処理)集計するExcelの起動
「For each」と「End」の間に繰り返し処理するアクションを入れます。
アクション『Excel』より「Excelの起動」をドラッグ&ドロップして、繰り返すデータを指定します。
この操作で、%tenpoExcelInstance2%というデータが生成されます。(名前は変更しています)
image.png

6.(繰り返し処理)データの読み込み
アクション『Excel』より「Excelワークシートから読み取る」をドラッグ&ドロップして、Excelインスタンスで%tenpoExcelInstance2%を選択し、セル範囲の値を選択して、列と行で読み込むデータの範囲を指定します。
この操作で、%TenpoExcelData%というデータが生成されます。(名前は変更しています)
image.png

7.(繰り返し処理)変数の設定
変数%Row%は、ペインの右側にある変数にて、変数名をRow、データの種類を数値、規定値を1として作成します。
アクション『変数』より「変数を大きくする」を選択して、変数名を%Row%とし、書き込むデータ行が2行なので、大きくする数値を2と設定します。
image.png
image.png

8.(繰り返し処理)集計表への書き込み
アクション『Excel』より「Excelワークシートへの書き込む」をドラッグ&ドロップして、Excelインスタンスで%ExcelInstance%を選択し、書き込む値を%TenpoExcelData%、書き込みモードを指定したセル上とし、列と行を指定します。その際、行を%Row%とすることで変数となり、処理順に書き込まれます。
image.png

9.集計表の保存
アクション『Excel』より「Excelの保存」をドラッグ&ドロップして、Excelインスタンスで%ExcelInstance%を選択し、保存モードはドキュメントを保存として上書き保存します。
image.png

10.データの集計
データを書き込んだシートとは別に、関数を設定したシートを集計表に組み込んでおくことで、データを自動で集計しています。

(参考)集計元データ

終わりに

Qiita記事を書いて作成手順を整理する事で、不要なアクションに気が付き修正する事ができました。当初は、「データの読み込み」の後に、「データのコピー」を入れていましたが、生成されたデータが使用されていない事に気が付く事ができました(^^♪
動画の修正は面倒でしたが(ノД`)・゜・。
また、Power Automate Desktopのフローに関数を入れて、直接集計できるようにしたかったのですが、勉強不足で構築できませんでしたので、継続してトライ&エラーしてみます(^_-)-☆

参考にさせて頂いた記事

Power Automate Desktop「現在日時取得のやり方」ロボ研Askeyのパワーオートメイトデスクトップ 100本ノック
全部見れてませんが、16球目「EXCEL操作 行を変数で指定する」は大変参考になりました。ありがとうございました<(_ _)>

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1