【第2回】テンプレートに請求データを差し込もう


前回のおさらい

前回は、Power Automate Desktop(PAD)でExcelの請求データを読み込み、
1行ずつ表示するところまでを行いました。

今回のテーマは、そのデータを使って請求書テンプレートに自動で値を差し込むこと!


今回のゴール

できるようになること:

  • Excelの請求書テンプレートを読み込む
  • 顧客名・請求番号・金額などをテンプレートに差し込む
  • 差し込んだ請求書を新しいファイルとして保存する

準備するファイル

請求書テンプレート.xlsx(Excel形式)

以下のように差し込み位置を「タグ(置換文字列)」として用意しておきます。

※ このように「<< >>」で囲った文字列を、あとでPADから置き換えます。


PADのフローを作成しよう

① データ取得(前回と同じ)

前回作成した以下の処理を流用します。(フロー名は、「02_請求書作成」とします。)

  • Excelを起動し、販売管理シート.xlsxを開く
  • 範囲(A2:C4など)を読み取り、1行目のデータを取得(CurrentItem

販売管理シート.xlsxのファイルパスや、範囲は適宜変更してください。

前回作成したフローの、「メッセージを表示」していたところを削除して、②以降の処理を設定します。


② Excelテンプレートを読み込む

▶ テンプレートファイルの読み込み

  • アクション:Excelの起動
  • パス:請求書テンプレートのパスを指定(例:C:\作業フォルダ\002_請求書作成¥請求書テンプレート.xlsx
  • インスタンスを表示する:はい
  • 出力変数:ExcelInstance2(開いたテンプレートファイルのインスタンス)

▶ Excelワークシートから読み取る

  • アクション:Excelワークシートから読み取る
  • Excelインスタンス:%ExcelInstance2%
  • 取得:ワークシートに含まれる使用可能なすべての値
  • 生成された変数:ExcelData2(Excelのデータを変数として取得)

③ テキストの置換

▶ Excelワークシート内のセルを検索して置換する。

以下の3つの置換を順に設定します:

  1. <<顧客名>>%CurrentItem[0]%
  2. <<請求番号>>%CurrentItem[1]%
  3. <<金額>>%CurrentItem[2]%

以下のアクションを上記パターン分設定する。

  • アクション:Excelワークシート内のセルを検索して置換する
  • Excelインスタンス:%ExcelInstance2%
  • 検索モード:検索して置換
  • 検索するテキスト:<<顧客名>>
  • 置換するテキスト:%CurrentItem[0]%

④ 差し込んだファイルを保存

▶ Excelを閉じる

  • アクション:Excelを閉じる
  • Excelを閉じる前:名前を付けてドキュメントを保存
  • ドキュメント形式:既定
  • ドキュメントパス:例)C:\作業フォルダ\002_請求書作成¥%CurrentItem[1]%_%CurrentItem[0]%_請求書.xlsx

全体フローはこちら

▶ 実行してみよう

フローを保存して実行してみましょう。
指定フォルダに、請求番号+顧客名で請求書ファイルが生成されれば成功です!


まとめ

今回のポイント:

  • Excelテンプレートはプレーンテキストとして読み込み&置換が可能
  • <<タグ>> を使って柔軟に差し込みができる
  • ファイル名も動的に組み立てて保存できる

次回予告

第3回:請求書をPDFに変換して保存しよう!

次回は、作成した請求書をPDFとして出力し、自動保存するところまで進めます!

お楽しみに!