前回のおさらい
前回は、Power Automate Desktop(PAD)を使って、
Excelで読み取った請求データをExcelの請求書テンプレートに差し込み、
請求書ファイル(.xlsx)を自動で生成しました。
今回のゴール
今回は、前回作成した請求書(Excel)を PDF形式に変換して保存 できるようにします。
- Excelファイルを開いてPDFとして保存
- 保存先のフォルダを指定
※ 今回も1件分のみ処理します。複数件処理は次回!
必要なファイル
- 前回出力した
.
xlsx 請求書ファイル(差し込み済み)が以下のフォルダにあることを前提にします。
例:C:/作業フォルダ/003_請求書作成/
INV-001_田中商事_請求書.xlsx
PDFで保存する方法
ExcelファイルをPDFに変換するには工夫がいります。
Wordファイルの場合は、ファイル保存時にPDFに変換して保存することが選択できますが、
Excelファイルの場合は、ファイル保存時にPDFに変換して保存することができません。
ExcelファイルをPDFで保存する方法はいくつかありますが、ここではWindowsでの標準機能を使った方法をご紹介します。。
1.Excelのエクスポート機能を利用
Excelのファイルメニューにある、エクスポート機能を利用すると、PDFでファイルが出力できます。
「ファイル」>「エクスポート」>「PDF/XPSドキュメントの作成」>「PDF/XPSの作成」ボタン
保存先、ファイル名を指定して、保存ができます。

2.標準の印刷機能を利用
Windowsには、「Microsoft Print to PDF」というWindowsに標準搭載されている仮想プリンター機能があり、印刷時に紙に印刷する代わりにPDFファイルとして保存できる機能です。
Excelを印刷するときに、「Microsoft Print to PDF」をプリンターとして選択して印刷すれば、PDFとしてファイルを保存できます。

PADのフローにPDF出力処理を作ろう。
今回は、前述した「2.標準の印刷機能を利用」を使ってExcelファイルをPDFに変換します。
⓪ ファイル名を変数で保存
▶ 印刷対象のファイルパスを変数で設定
- 変数名:請求書Excelファイルパス
- 例:
C:/作業フォルダ/003_請求書作成/
INV-001_田中商事_請求書.xlsx
▶ 保存するPDFのファイルパスを変数で設定
- 変数名:PDFファイルパス
- 例:
C:/作業フォルダ/003_請求書作成/
PDF/INV-001_田中商事_請求書.pdf
① 既定のプリンターを変更
▶ 既定のプリンターを取得
- 変数名:
PrinterName
既定のプリンターに「Microsoft Print to PDF」を設定して、PDFファイルを出力します。
PDFファイルの出力処理が終わった後に、既定のプリンターをもとに戻すために、始めに既定のプリンターを取得しておきます。
▶ 既定のプリンターを設定
プリンター名:Microsoft Print to PDF
※Windowsに登録されているプリンターの中から選択できます。
② PDF形式で保存
▶ ドキュメントの印刷
- 印刷するドキュメント:請求書Excelファイルパス
※「⓪ ファイル名を変数で保存」で設定した変数を指定。
▶ キーの送信
「ドキュメントの印刷」を実行すると、ファイルパスを指定するウィンドウが表示されます。画面でファイルパスを設定するため、キーの送信で入力します。
- キーの送信先:フォアグラウンドウィンドウ
- 送信するテキスト:PDFファイルパス
※「⓪ ファイル名を変数で保存」で設定した変数を指定。
▶ キーの送信
入力したファイルパスを確定させるためにエンターキーを送信します。
- キーの送信先:フォアグラウンドウィンドウ
- 送信するテキスト:Enter
※特殊キーの挿入>その他>Return を選択
③ 既定のプリンターを変更
▶ 既定のプリンターを設定
プリンター名:PrinterName
※「① 既定のプリンターを変更」で取得した既定のプリンターを設定します。
▶ 実行してみよう
実行すると、ExcelファイルがPDF形式で自動変換され、指定のフォルダに保存されます。
例:
- 入力:
INV-001_田中商事_請求書.xlsx
- 出力:
C:/作業フォルダ/003_請求書作成/PDF/INV-001_田中商事_請求書.pdf
改良点
指定したPDFファイルが既に存在する場合、「② PDF形式で保存」の途中で、上書き保存を確認する画面が表示され、処理が止まってしまいます。
今回は事前にファイルの存在チェックをして、存在した場合にあらかじめ削除しておくという処理を追加します。
⓪-1 【追加】ファイルの存在チェック
▶ ファイルが存在する場合
- ファイルが次の場合:存在する
- ファイルパス:PDFファイルパス
※「⓪ ファイル名を変数で保存」で設定した変数を指定。
▶ (ファイルが存在する場合)ファイルの削除
- 削除するファイル:PDFファイルパス
※「⓪ ファイル名を変数で保存」で設定した変数を指定。
フロー全体

待機処理を9行目、12行目に入れています。
PADの処理スピードとExcelの起動スピードに差があるため、調整のため待機処理を入れています。
まとめ
今回のポイント:
- PADではExcelファイルを開いてPDFに変換できる
- 保存先を固定しておくことで管理が簡単になる
次回予告
第4回:複数の請求書を一括で作成・PDF化しよう!
次回は、請求データ全行に対してループ処理を追加し、
複数顧客の請求書を一括で作成&PDF保存する方法をご紹介します!