【VBA】特定のフォルダ内の全ファイルをエラー処理付きで削除する方法
毎回手動で特定のフォルダ内の全ファイルを削除するのは大変です。この記事では、Excel VBAを使用して簡単にその作業を自動化し、エラー処理も含めて効率的な方法を紹介します。
サンプルコード
VBA
Option Explicit
Sub DeleteFilesInFolder()
Dim fso As Object
Dim folderPath As String
Dim file As Object
' フォルダパスの指定
folderPath = "C:\指定フォルダパス"
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FolderExists(folderPath) Then
MsgBox "指定されたフォルダが存在しません。", vbExclamation
Exit Sub
End If
Application.ScreenUpdating = False ' 画面更新を停止
On Error GoTo ErrorHandler ' エラー処理の開始
For Each file In fso.GetFolder(folderPath).Files
file.Delete ' ファイルの削除
Next file
MsgBox "ファイルの削除が完了しました。", vbInformation
Application.ScreenUpdating = True ' 画面更新を再開
Exit Sub
ErrorHandler:
MsgBox "エラーが発生しました: " & Err.Description, vbCritical
Application.ScreenUpdating = True ' エラー時も画面更新を再開
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
フォルダパスが正しいか、ファイルへのアクセス権限があるか確認してください。