お疲れ様です。
金融業界で働いている事務員兼主婦です。
前回はGlideを使用して管理簿アプリを作成、画像&文書取込にもチャレンジしてみました。
職場では電話が鳴り響く中、管理業務のほかに、月次資料の作成や色々な集計や報告の取り纏め業務も多くあります。とくに各支店から報告をもらい集計する作業はデータ量が多すぎるため、Excelシートを分割して報告をもらっています。そこでPower Automateを使用して集計&報告作業を自動化してみました。今回は職場の中で1番集計や取り纏め業務が多い上司に「少し時間短縮出来るかもしれないのでやってみてもらえませんか?」と試作品を使用してみてもらいました。
(※職場内はセキュリティが厳しいため、サンプルを使用してもらいました。)
完成品
使用ツール
・Power Automate
・Microsoft Excel
製作開始
1. 集計や取り纏めたいExcelを準備する。
2. Power Automateの設定
Power Automateの公式ドキュメントです。
フローの作成
詳細設定(折りたたみ)
①アクションからExcelの起動
をMainにドラッグ、ドキュメントパスを指定し支店合計表を起動させる設定にして保存。
②同じく、アクションからExcelの起動
をMainにドラッグ、ドキュメントパスを指定しA支店表を起動させる設定にして保存。
③繰り返し、アクションからExcelの起動
をMainにドラッグ、ドキュメントパスを指定しB支店表を起動させる設定にして保存。
④同じくC支店も設定を保存。
⑤アクションからExcelワークシートから読み取る
をMainにドラッグ、A支店表のExcelインスタンス、取得値、先頭列と行、最終列と行を設定し保存する。
⑥同じく、アクションからExcelワークシートから読み取る
をMainにドラッグし、B支店表のExcelインスタンス、取得値、先頭列と行、最終列と行を設定し保存する。
⑦繰り返し、アクションからExcelワークシートから読み取る
をMainにドラッグし、C支店表のExcelインスタンス、取得値、先頭列と行、最終列と行を設定し保存する。
⑧アクションからExcelワークシートに書き込む
をMainにドラッグし、支店合計表のExcelインスタンス、A支店の書き込む値、書き込むモード、列と行を設定し保存する。
⑨繰り返し、アクションからExcelワークシートに書き込む
をMainにドラッグし、支店合計表のExcelインスタンス、B支店の書き込む値、書き込むモード、列と行を設定し保存する。
⑩同じく、アクションからExcelワークシートに書き込む
をMainにドラッグし、支店合計表のExcelインスタンス、C支店の書き込む値、書き込むモード、列と行を設定し保存する。
⑪アクションからExcelを閉じる
をMainにドラッグし、支店合計表のExcelインスタンス、Excelを閉じる前の動作を設定し保存する。今回は集計作業なので、支店合計表のみ保存して閉じる設定とします。
⑫アクションからExcelを閉じる
をMainにドラッグし、A支店表のExcelインスタンス、Excelを閉じる前の動作を保存しないに設定し保存。
⑬繰り返し、アクションからExcelを閉じる
をMainにドラッグし、B支店表のExcelインスタンス、Excelを閉じる前の動作を保存しないに設定し保存。
⑭同じく、アクションからExcelを閉じる
をMainにドラッグし、C支店表のExcelインスタンス、Excelを閉じる前の動作を保存しないに設定し保存。
⑮実行ボタンを押すと自動的に一連の作業が自動化され、支店合計表の出来上がり。
※フローのソースコード
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''G:\\マイドライブ\\支店集計\\支店合計.xlsx.xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''G:\\マイドライブ\\支店集計\\A支店.xlsx.xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance2
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''G:\\マイドライブ\\支店集計\\B支店.xlsx.xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance3
Excel.LaunchExcel.LaunchAndOpenUnderExistingProcess Path: $'''G:\\マイドライブ\\支店集計\\C支店.xlsx .xlsx''' Visible: True ReadOnly: False Instance=> ExcelInstance4
Excel.ReadFromExcel.ReadCells Instance: ExcelInstance2 StartColumn: 5 StartRow: 2 EndColumn: 6 EndRow: 6 ReadAsText: False FirstLineIsHeader: False RangeValue=> ExcelData
Excel.ReadFromExcel.ReadCells Instance: ExcelInstance3 StartColumn: 5 StartRow: 7 EndColumn: 6 EndRow: 11 ReadAsText: False FirstLineIsHeader: False RangeValue=> ExcelData2
Excel.ReadFromExcel.ReadCells Instance: ExcelInstance4 StartColumn: 5 StartRow: 12 EndColumn: 6 EndRow: 16 ReadAsText: False FirstLineIsHeader: False RangeValue=> ExcelData3
Excel.WriteToExcel.WriteCell Instance: ExcelInstance Value: ExcelData Column: 5 Row: 2
Excel.WriteToExcel.WriteCell Instance: ExcelInstance Value: ExcelData2 Column: 5 Row: 7
Excel.WriteToExcel.WriteCell Instance: ExcelInstance Value: ExcelData3 Column: 5 Row: 12
Excel.CloseExcel.CloseAndSave Instance: ExcelInstance
Excel.CloseExcel.Close Instance: ExcelInstance2
Excel.CloseExcel.Close Instance: ExcelInstance3
Excel.CloseExcel.Close Instance: ExcelInstance4
使用してもらった感想
お忙しい中、ご協力頂いた上司に感想を伺いました。「すごっ!勝手に動いてる!早いじゃん!これならなんでも集計するの早くなるよね。」と大絶賛でした
その後、設定方法を説明したところ色々とFBを頂きました。
・報告書式は各支店ともに決まった書式に合わせないといけない。
・各支店から報告をもらう際、書式を崩されないような指示が必要。
・同様の作業は自動化可能だが、イレギュラー対応は不可。
・設定方法を覚えられるか心配。
実際に私も作成していて、まだ全然詳細を理解出来ておらず、高度な技までには至りませんでした。説明しながら、これからさらに勉強が必要だなーと実感しました。さらに精進していきたいと思います。
参考記事
ここまでお付き合い頂きまして、ありがとうございました。