前回は、POSシステムの売上データ(CSV)を読み込んで、これを売上報告書に使える形に自動加工する最初の段階に取り組んだ。データの整理を行うVBAスクリプトを仕込んだMicrosoft Excelファイルを用意し、これにデータを貼り付けてデータの整理を行わせるところまでやった。今回はこの整理したデータを売上報告書にはめ込んでいくための下処理を行う。
POSデータ(CSV)をVBAマクロ付きMicrosoft Excelで整理
前回より、POSから送られてくる売上データを自動的に売上報告書にまとめる処理をPower Automateで自動化するための取り組みを進めている。POSから送られてくる売上データは次のようなCSVデータとした。
前回は、このデータを整理するためのVBAスクリプトを備えたMicrosoft Excelファイルを用意し、これにデータを貼り付けてから処理を行わせるところまで進めた。整理後のデータは次のようになっている。
次は、このデータを売上報告書へ当てはめていくために、特定の部分のみをコピーするといった処理を行っていく。
売上報告書を作成する基本となる流れ
アイデア自体は簡単だ。例えば、売上データが123件だった場合、これを20件ごとに報告書にコピーしていき、合計7枚の売上報告書を作るといった感じだ。もうちょっと具体的にフローを整理していくと次のようになる。
- 売上報告書のMicrosoft Excelテンプレートファイルを開く。このテンプレートの1つ目のワークシートが売上報告書の形式を取っている - (A)
- 整理したデータの1行~20行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの21行~40行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの41行~60行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの61行~80行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの81行~100行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの101行~120行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
- 整理したデータの121行~123行目をコピーする - (data)
- (A)に新しいワークシートを追加する - (B)
- (B)に(A)の最初のワークシートの内容を貼り付ける
- (B)に(data)を貼り付ける
ここではデータ件数を123件と仮定したので上記のような流れになっているが、件数が異なれば処理する内容も変わってくる。プログラミング言語ではこうした処理は条件付きの繰り返し構文で処理を行う。そのあたりはPower Automateも同じだ。