【VBA】特定のフォルダ内の全ファイルを部分一致で削除する方法
日々の業務で大量のファイルを管理していると、特定の文字列を含むファイルだけを一括で削除したい場面がよくあります。手作業では時間がかかる上にミスも増えますが、このVBAマクロを使えば簡単に解決できます。
サンプルコード
VBA
Option Explicit
Sub DeleteFilesWithPartialMatch()
Dim fso As Object, folder As Object, file As Object
Dim targetFolder As String, partialMatchString As String
Set fso = CreateObject("Scripting.FileSystemObject")
' 対象フォルダと部分一致文字列を指定
targetFolder = "C:\path\to\your\folder"
partialMatchString = "partialmatchstring"
Application.ScreenUpdating = False
Set folder = fso.GetFolder(targetFolder)
For Each file In folder.Files
If InStr(file.Name, partialMatchString) > 0 Then
file.Delete
End If
Next file
Application.ScreenUpdating = True
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
フォルダパスや部分一致文字列が正しいか確認してください。