Vba を使用してフォルダーを削除する方法 (例付き)


VBA で次のメソッドを使用してフォルダーを削除できます。

方法 1: フォルダー内のすべてのファイルを削除する

 Sub DeleteFolderContents()
    
    On Error Resume Next
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*On Error GoTo 0

End Sub

この特定のマクロは、 My_Dataというフォルダー内のすべてのファイルを削除します。

方法 2: フォルダー全体を削除する

 SubDeleteFolder ()
    
    On Error Resume Next
    
    'delete all files in folder
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*'delete empty folder
    RmDir " C:\Users\bobbi\Desktop\My_Data\ "
    
    On Error GoTo 0

End Sub

この特定のマクロは、 My_Dataフォルダー全体を削除して、存在しなくします。

On Error Resume Next行は、エラーが発生してフォルダーが見つからない場合にエラー メッセージを表示しないように VBA に指示します。

次に、 On Error GoTo 0を使用して、エラー メッセージをデフォルト設定にリセットします。

フォルダーが見つからない場合にエラー メッセージを表示したい場合は、コードからこれらの 2 行を削除するだけです。

次の例は、3 つの Excel ファイルを含むMy_Dataという名前のフォルダーを使用して各メソッドを実際に使用する方法を示しています。

例 1: VBA を使用してフォルダー内のすべてのファイルを削除する

VBA を使用して、 My_Dataというフォルダーからすべてのファイルを削除するとします。

これを行うには、次のマクロを作成できます。

 Sub DeleteFolderContents()
    
    On Error Resume Next
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*On Error GoTo 0

End Sub

このマクロを実行してフォルダーを再度開くと、すべてのファイルが削除されていることがわかります。

例 2: VBA を使用してフォルダー全体を削除する

VBA を使用してMy_Dataというフォルダー全体を削除して存在しないようにする場合は、次のマクロを作成できます。

 SubDeleteFolder ()
    
    On Error Resume Next
    
    'delete all files in folder
    Kill “ C:\Users\bobbi\Desktop\My_Data\*.*'delete empty folder
    RmDir " C:\Users\bobbi\Desktop\My_Data\ "
    
    On Error GoTo 0

End Sub

このマクロを実行してエクスプローラーを開くと、 My_Dataというフォルダーが存在しないことがわかります。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA: ワークブック内のシート数を数える方法
VBA: 別のブックからデータを抽出する方法
VBA: 名前に特定のテキストが含まれている場合にシートを削除する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です