Excel VBAでPDFファイル作成を自動化する

ExcelのデータをPDFファイルにする場合、名前を付けてファイルを保存する際にファイル形式を「PDF(*.pdf)」に変更すれば簡単に作成できますが、VBAを使って処理を自動化する際にはPDF化処理をVBAに組み込む必要があります。
今回はVBAを使ってPDF化する具体的な方法についてサンプルアプリを使ってご紹介します。

サンプルアプリ実行動作

Excel上の赤枠の「PDFファイル出力」ボタンをクリックするとExcelファイルがあるフォルダ内にPDFファイルが作成されます。

サンプルコードの処理内容

処理の内容については以下の通りです。

PDFファイルを作成する保存先とファイル名を指定します。
     ↓
出力するPDFファイルの書式を設定します。
(PDF化する時の上下のマージン、拡大率または縮小率(%)など)
     ↓
PDFファイル出力
     ↓
出力完了メッセージ表示

サンプルコード    アプリの作成手順はこちら

Option Explicit

Sub Export_PdfFile()

'保存先フォルダパス&ファイル名の設定
 Dim fileName As String
 fileName = ThisWorkbook.Path & "\PDF出力ファイル.pdf"

'出力するPDFファイルの書式設定
 With ActiveSheet.PageSetup
 
   'ワークシートを印刷するとき上下のマージンをそれぞれ1に設定
    .TopMargin = 1
    .BottomMargin = 1
 
   'ワークシートを印刷するときの拡大率または縮小率(%)を指定 今回は100%で設定
    .Zoom = False
    
   'ワークシートを印刷するときに、横何ページ分で収めるかを指定
    .FitToPagesWide = 1
    
   'ワークシートを印刷するときに、縦何ページ分で収めるかを指定
    .FitToPagesTall = 1

   '上詰め出力
   ' .CenterVertically = False

 End With

'PDFファイル出力
 ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:=fileName

'出力完了メッセージの表示
 MsgBox "PDFファイルの出力が完了しました。"

End Sub