📘 Excel逆引き事典

【VBA】PDFファイルをバックグラウンドで削除する方法

手作業での大量のPDFファイルの削除は時間がかかります。この記事では、Excel VBAを使用して指定したフォルダ内のすべてのPDFファイルをバックグラウンドで安全に削除する方法を紹介します。

サンプルコード

VBA
Option Explicit
Sub DeletePDFFiles()
    Dim fso As Object, folder As Object, file As Object
    Dim folderPath As String
    
    ' フォルダパスの指定
    folderPath = "C:\path\to\your\folder"
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set folder = fso.GetFolder(folderPath)
    Application.ScreenUpdating = False
    For Each file In folder.Files
        If LCase(Right(file.Name, 4)) = ".pdf" Then
            file.Delete
        End If
    Next file
    Application.ScreenUpdating = True
End Sub

よくある質問

Q 元に戻せますか?

A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。

Q エラーが出たら?

A.
フォルダパスやファイル名が正しいか確認してください。また、アクセス権限がない場合もありますので、管理者権限で実行するか、権限のあるユーザーとしてログインしてから実行してください。