
VBA Office文書のPDF保存
最近のExcelやWord、PowerPointでは、文書ファイルをPDF形式で保存する機能があります。
その操作方法はとても簡単で、対象の文書ファイルを、それぞれのアプリケーションで開き、保存する際にPDF形式を指定するだけです。
しかし、対象ファイルの数が増えてくると、単純作業なだけに面倒になってきます。
そこで、VBAプログラムを作成して、この作業を自動化しましょう。
ツールファイル添付
VBAプログラムを組み込んだExcelのツールファイルを添付します。
ツールの使い方
Excelのツールファイルを開いて、「PDF保存」ボタンを押すとファイルダイアログが開きます。そのファイルダイアログで、PDF保存対象の文書ファイルを選択して、「OK」ボタンを押します。
すると、PDF形式に変換されたファイルが、対象ファイルと同じフォルダ内に保存されます。
プログラムの解説
プログラムの主な内容を説明します。
SaveAsPdfは、対象の文書ファイルをPDF形式で保存する処理です。
GetObjectで対象の文書ファイルを開き、ファイル拡張子名により、Excel、Word、PowerPointそれぞれのPDF形式保存の処理へ分岐します。
Private Sub SaveAsPdf(sFileName As String)
:
Dim oDocument As Object: Set oDocument = GetObject(sFileName)
Select Case LCase(sExtensionName)
Case "xls", "xlsx", "xlsm"
oDocument.ExportAsFixedFormat xlTypePDF, sPdfName
Case "doc", "docx", "docm"
oDocument.ExportAsFixedFormat sPdfName, wdExportFormatPDF
Case "ppt", "pptx", "pptm"
If 1 <= oDocument.Slides.Count Then
oDocument.SaveAs sPdfName, ppSaveAsPDF
End If
End Select
oDocument.Close
End Sub
さいごに
とてもシンプルなプログラムですが、対象ファイルが大量にある時などは便利かなと思います。
VBAプログラム全体を閲覧されたい方は以下にパスワードを示します。
ここから先は
40字
/
1画像
¥ 100
記事を気に入って頂き、お役に立てたら嬉しいです。