Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Presentation・プレゼンテーション » PDFファイルを作成・出力するPowerPointマクロ

PDFファイルを作成・出力するPowerPointマクロ

対象:PowerPoint2007, PowerPoint2010, PowerPoint2013

「パワーポイント vba pdf」
「powerpoint2010 マクロ pdf化」
「power point 2010 vba pdf 保存」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスが時折見られます。

プレゼンテーションファイルからPDFファイルを作成する・PDFを出力するマクロ・VBA(Visual Basic for Applications)のコードを探している方による検索です。

[スポンサードリンク]

Presentation.SaveAsメソッドを使ったマクロ

参考になりそうなシンプルなマクロをご紹介しておきます。

Sub アクティブファイルをPDFで保存()

 Dim full_path As String
 Dim file_name As String

 With ActivePresentation

  full_path = .Path
  file_name = fileNameWithoutExtension(.Name)

  .SaveAs _
   fileName:=full_path & "\" & file_name & ".pdf", _
   FileFormat:=ppSaveAsPDF

 End With

End Sub


Function fileNameWithoutExtension(ByVal fileName As String) As String

 Dim pos_dot As Long

 ''拡張子を取り除くため「.」の位置を後から探す
 pos_dot = InStrRev(fileName, ".")
 ''拡張子を取り除いたファイル名を返す
 fileNameWithoutExtension = Left(fileName, pos_dot - 1)

End Function

上記のSubプロシージャを実行すると、アクティブなプレゼンテーションファイルと同じフォルダに、同じファイル名のPDFファイルが保存されます。

アクティブなプレゼンテーションファイルの、フルパスを変数・full_pathに格納し、
 With ActivePresentation
  full_path = .Path

拡張子部分を除いたファイル名を変数・file_nameに格納しています。
  file_name = fileNameWithoutExtension(.Name)

ファイル名から拡張子を除く処理はFunctionプロシージャ・fileNameWithoutExtensionとして独立させています。

取得したフルパスと、拡張子なしのファイル名を使って、Presentation.SaveAsメソッドを実行してPDFファイルとして保存しています。
  .SaveAs _
   fileName:=full_path & "\" & file_name & ".pdf", _
   FileFormat:=ppSaveAsPDF

Presentation.ExportAsFixedFormatメソッドを使ったマクロ

同じことを、Presentation.ExportAsFixedFormatメソッドを使っても行うことができます。

Sub アクティブファイルをPDFにして出力()

 Dim full_path As String
 Dim file_name As String

 With ActivePresentation

  full_path = .Path
  file_name = fileNameWithoutExtension(.Name)

  .ExportAsFixedFormat _
   Path:=full_path & "\" & file_name & ".pdf", _
   FixedFormatType:=ppFixedFormatTypePDF
 End With

End Sub

考え方は、先のSaveAsメソッドを使ったマクロと同じです。

マクロの作りとしては、最後に
  .SaveAs _
するのか
  .ExportAsFixedFormat _
するのかの違いです。

但し、Presentation.ExportAsFixedFormatメソッドは、SaveAsメソッドよりもたくさんの引数が指定できることがVBA的には違います。

詳細は、Presentation.ExportAsFixedFormatメソッドのヘルプをご確認ください。

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Presentation・プレゼンテーション » PDFファイルを作成・出力するPowerPointマクロ

「Presentation・プレゼンテーション」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.