【VBA】ワードファイルをpdf形式で保存する

エクセルVBAでよく使うコードの備忘録。VBAでワードファイルを開きpdf形式で保存するコード。

スポンサーリンク

事前準備

VBAでワードファイルを操作するには、参照設定が必要です。VBAのコードエディタから「ツール > 参照設定」と進み、「Microsoft Word XX.X Object Library」にチェックを入れておきます。

pdf形式で保存する

pdf形式で保存するには、DocumentオブジェクトのExportFixedFormatを使用します。引数として保存先のファイルパスと保存形式(pdfの場合はwdExportFormatPDF)を設定すればOKです。コードを使用する際はカッコに囲まれた部分([***])を自分のプログラムに合わせて変更してください。

Public Sub SaveAsPdf()
    
    '--- Wordのアプリケーションオブジェクト ---'
    Dim objWord As Word.Application
    Set objWord = CreateObject("Word.Application")
    objWord.Visible = True
    
    '--- ドキュメントオブジェクト ---'
    Dim objDoc As Word.Document
    Set objDoc = objWord.Documents.Open("[開くワードファイルのパス]")
    
    
    '--- 保存先の設定 ---'
    Dim saveFileDir As String '保存先のフォルダ
    Dim saveFileName As String '保存ファイル名(拡張子なし)
    Dim saveFilePath As String
    saveFileDir = "[保存先フォルダのパス]"
    saveFileName = "[保存ファイル名(拡張子なし)]"
    saveFilePath = saveFileDir & "\" & saveFileName & ".pdf"
    
    
    '--- PDFとして保存する ---'
    Call objDoc.ExportAsFixedFormat(OutputFileName:=saveFilePath, ExportFormat:=wdExportFormatPDF)
    
    '--- ドキュメントを閉じる ---'
    objDoc.Close
    
    '--- ワードを閉じる ---'
    objWord.Quit
    
End Sub