当サイトの記事にはプロモーションが含まれています。
VBAでPowerPointをPDFに自動保存する方法|初心者でもできる簡単マクロ
2025.10.07
「PowerPointのスライドをPDFに変換したいけれど、毎回手作業でやるのは面倒…」そんなお悩みをお持ちの方へ、VBA(マクロ)を使って、スライドをPDF形式で自動保存する方法をご紹介します。特に、パソコン操作に不安がある方にもわかりやすく解説しますので、ぜひ最後までご覧ください。
VBAとは?パワーポイントを自動化する魔法のツール

PowerPointのイメージ
VBA(Visual Basic for Applications)は、Microsoft Office製品に組み込まれているプログラム言語で、普段の操作を自動化することができます。例えば、毎回手動で行っている作業をマクロとして記録し、ボタン一つで実行できるようになります。
「マクロって難しそう…」と思われるかもしれませんが、実はとても簡単に始められます。まずは、PowerPointをPDFに変換するマクロを作成してみましょう。
PowerPointをPDFに保存する基本のマクロ
以下の手順で、PowerPointのスライドをPDF形式で保存するマクロを作成します。
- PowerPointを開き、「Alt + F11」を押してVBAエディタを開きます。
- 「挿入」→「標準モジュール」を選択し、新しいモジュールを追加します。
- 以下のコードをコピーして貼り付けます。
Sub SaveAsPDF()
Dim pptName As String
Dim pdfName As String
pptName = ActivePresentation.FullName
pdfName = Left(pptName, InStrRev(pptName, ".")) & "pdf"
ActivePresentation.SaveAs pdfName, ppSaveAsPDF
End Sub
- 「F5」を押してマクロを実行します。
これで、現在開いているPowerPointのスライドがPDF形式で保存されます。
PDF保存時のファイル名を自動で変更する方法
同じファイル名で保存しようとすると、「ファイルが既に存在します」と警告が出ることがあります。これを避けるために、ファイル名に番号を付けて保存する方法をご紹介します。
Sub SaveAsPDFWithVersion()
Dim pptName As String
Dim pdfName As String
Dim version As Integer
pptName = ActivePresentation.FullName
pdfName = Left(pptName, InStrRev(pptName, ".")) & "pdf"
version = 1
' ファイルが存在する場合、番号を付けて保存
Do While Dir(pdfName) <> ""
pdfName = Left(pptName, InStrRev(pptName, ".")) & "▲" & version & ".pdf"
version = version + 1
Loop
ActivePresentation.SaveAs pdfName, ppSaveAsPDF
End Sub
このマクロでは、同じ名前のPDFファイルが存在する場合、ファイル名に「▲1」「▲2」と番号を付けて保存します。
複数のPowerPointファイルを一括でPDFに変換する方法
複数のPowerPointファイルを一度にPDFに変換したい場合、以下のマクロを使用します。
Sub BatchConvertToPDF()
Dim folderPath As String
Dim fileName As String
Dim pptApp As Object
Dim pptPresentation As Object
' フォルダのパスを指定
folderPath = "C:YourFolderPath" ' ここに変換したいファイルがあるフォルダのパスを指定してください
' PowerPointアプリケーションを起動
Set pptApp = CreateObject("PowerPoint.Application")
pptApp.Visible = True
' フォルダ内のすべてのファイルをループ
fileName = Dir(folderPath & "*.ppt*")
Do While fileName <> ""
' PowerPointファイルを開く
Set pptPresentation = pptApp.Presentations.Open(folderPath & fileName)
' PDF形式で保存
pptPresentation.SaveAs folderPath & Replace(fileName, ".ppt", ".pdf"), 32 ' 32はPDF形式を示します
' プレゼンテーションを閉じる
pptPresentation.Close
' 次のファイルへ
fileName = Dir()
Loop
' PowerPointアプリケーションを終了
pptApp.Quit
Set pptApp = Nothing
End Sub
このマクロでは、指定したフォルダ内のすべてのPowerPointファイルをPDF形式で保存します。
よくある質問や疑問
Q: VBAって初心者でもできそうですか?
はい、できます!最初はコードを入力するのが不安かもしれませんが、少しずつ覚えていけば大丈夫です。実際に動かしてみると、マクロの便利さが実感できますよ。
Q: コードを間違えて実行しちゃったらどうしよう…?
PowerPointのVBAでは、「Ctrl + Z」で操作を元に戻すことができます。安心して試してみてください。
Q: 他にも活用できるマクロはありますか?
はい!例えば、スライドの内容を自動で変更するマクロや、特定のスライドだけをPDFに保存するマクロなど、さまざまな活用方法があります。
まとめ
VBAを使うことで、PowerPointのスライドを自動でPDFに保存することができます。最初は難しそうに思えるかもしれませんが、少しずつ覚えていけば、作業効率が大幅に向上します。ぜひ、今回ご紹介したマクロを試してみてください。
他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。
コメント