Power Automate Desktop 複数のExcelブックから複数の様式にExcel転記

タイトル画像
スポンサーリンク
スポンサーリンク
ピピンプイ
ピピンプイ

今回は複数のExcelブックの納品一覧表から、別のExcelブックの請求書に自動で転記する方法をご紹介します。
納品数が多く1枚の請求書では書ききれない場合に、自動で2枚目の請求書に転記していきます。

別の記事に掲載している「複数のファイルをPower Automate Desktopに取り込む方法」と「複数のExcelブックからExcel転記」に修正と追加を加えてフローを作成します。

今回はExcelブック1つでも転記できるように修正し、1枚の請求書に書ききれない場合は2枚目の請求書に転記します。

転記が終わった請求書に、現在の日時をファイル名に追加し、自動で保存するフローを追加します。

1.使用するExcelブック

例として、商品区分ごとにExcelブックを用意し、注文が入った場合に商品名のワークシートに数量や金額を入力します。

入力された納品一覧表の商品ごとの合計額を請求書に転記していきます。

今回は納品一覧表のExcelブック3ファイルと請求書を使用します。

使用するExcelブック

○納品一覧表

Excelブックの商品アルファベット
Excelブックの商品ひらがな
Excelブックの商品数字

○請求書

請求書1枚目
請求書2枚目

2.フローの完成形

フローの完成形

フローの1から17
フローの18から34
フローの35から36

3.修正(複数のファイルをPower Automate Desktopに取り込む方法)

今回はExcelブック1つでも転記できるように修正し、1枚の請求書に書ききれない場合は2枚目の請求書に転記します。

1.カスタムフォームを表示(フロー番号1)

今回はExcelブック1つでも転記できるように、カスタムフォームのSecondFileを削除します。

カスタムフォームを表示
カスタムフォームを表示のセカンドファイルを削除

2.IfのEnd

フロー番号3のIfのEndを一番下まで移動させます。

フローを一番下まで移動

フローを最後まで完成させたら、フローの一番下に移動させます。

3.項目をリストに追加を削除

カスタムフォームでSecondFileを削除したので、項目リストに追加のSecondFileも削除します。

項目をリストに追加を削除

4.修正(複数のExcelブックからExcel転記)

1.Excelの起動(フロー番号15)

「Excelの起動」で開くExcelブックを請求書に変更します。

Excelの起動を請求書に変更

2.変数の設定(フロー番号19)

請求書のセルB47から書き込みを開始し、次の「」(B48)に自動で移動するように変数を47のセル番号に設定します。

1.アクションの「変数」から「変数の設定」をワークスペースにドラッグ&ドロップします。

変数の設定のアクション
変数の設定セル47

3.If(フロー番号26)

請求書に転記する際、1枚目に書ききれない場合に請求書2枚目に自動でセルを移動させる処理を行います。

Ifのアクションを追加して、1枚目の請求書に書き込みます。

Ifのアクション

1.アクションの「条件」から「If」をワークスペースにドラッグ&ドロップします。

NewVarがLoopで増加し、25以下の場合に書き込みを行います。

Ifの設定

4.Else if(フロー番号29)

Else ifのアクションを追加して、2枚目の請求書に書き込みます。

Else ifのアクション

1.アクションの「条件」から「Else if」をワークスペースにドラッグ&ドロップします。

NewVarがLoopで増加し、25より大きい場合に書き込みを行います。

1行ずつ書き込みが始まり、セルB13からB25に移動していき、NewVarの数が25より大きくなった場合に、次の請求書のセルB47に移動するようにします。

Else ifの設定

4-1.Excelワークシートに書き込む(フロー番号30)

請求書2枚目に書き込みを行います。

1.アクションの「Excel」から「Excelワークシートに書き込む」をワークスペースにドラッグ&ドロップします。

Excelワークシートに書き込むの設定

Excelインスタンス:%Excel%
フロー番号15「Excelの起動」で設定した変数Excelを入力します。

書き込む値:%ExcelData.ColumnHeadersRow%

行単位で転記するために、ExcelData.ColumnHeadersRowを使用します。
ColumnHeadersRowには、行単位のデータが格納されています。

ExcelData.ColumnHeadersRowを設定

書き込みモード:指定したセル上
列:B
行:%NewVar2%
フロー番号17の「変数の設定」で設定した変数を使用します。

4-2.変数を大きくする(フロー番号31)

上記の「Excelワークシートに書き込む」で設定した行:%NewVar2%に「変数を大きくする」でLoopする都度NewVar2に+1していき、行番号を増やしていきます。

行番号を増やすことで、次の「」(B48)に自動で移動するように設定します。

1.アクションの「変数」から「変数を大きくする」をワークスペースにドラッグ&ドロップします。

変数を大きくするの設定

変数名:%NewVar2%

大きくする数値:1

5.追加

1.現在の日時を取得

後でExcelブックを保存する時に、ファイル名に現在の日時を設定したいので、「現在の日時を取得」のアクションを設置します。

1.アクションの「日時」から「現在の日時を取得」をワークスペースにドラッグ&ドロップします。

Excelブックに日付を入力
.現在の日時を取得

2.Excelを閉じて請求書を保存する

請求書を自動で保存したい場合は「Excelを閉じる」で保存するか「Excelの保存」のアクションをフローに追加します。

今回はExcelを閉じるで請求書を保存します。

1.アクションの「Excel」から「Excelを閉じる」をワークスペースにドラッグ&ドロップします。

ファイル名に日付と時刻を追加したいので、「現在の日時を取得」で取得した日時を使います。

Excelを閉じてファイルに保存する
Excelブックに日付を入力

ファイル名の内訳
%CurrentDateTime.Year%年%CurrentDateTime.Month%月%CurrentDateTime.Day%日%CurrentDateTime.Hour%時%CurrentDateTime.Minute%分%CurrentDateTime.second%秒.xlsx

以上で複数のExcelブックから複数の様式にExcel転記をご紹介しました。

次回は今回の記事と別の記事に掲載している「複数のファイルをPower Automate Desktopに取り込む方法」と「複数のExcelブックからExcel転記」を1つの記事にまとめて、Excelの納品一覧から請求書作成の方法をご紹介します。

タイトルとURLをコピーしました