VBA ファイルを削除するKillステートメント フルダーを削除するRmDirステートメント

スポンサーリンク
スポンサーリンク

Kill【キル】ステートメント

ファイルを削除するには
Kill【キル】ステートメントを使用します。
削除したファイルは、ディスクから完全に削除されます。

Kill【キル】ステートメントの書式

Kill PathName


設定値の説明

  • PathName【パスネーム】
    削除するファイル名を指定します。
    パスを含めて、指定できます。ファイル名のみ指定した場合は
    カレントフォルダーのファイルが削除対象になります。
    ファイル名にはワイルドカードを使用できます。

開いているファイルをKillステートメントで削除しようとすると
エラーになります。エラー処理が必要になります。

コード例

Sub ファイル削除()
Dim ファイル名 As String
ファイル名 = ThisWorkbook.Path & "¥Book1.xlsx"
On Error GoTo エラー処理
Kill PathName:=ファイル名
MsgBox ファイル名 & "削除しました。"
Exit Sub
エラー処理:
MsgBox "ファイルがないか開かれています。"
End Sub

コードの解説

このマクロが記述されているブックと同じパスにある
「Book1.xlsx」ファイルを削除するコードです。
ファイルがなかったり開かれている場合はエラーになるので
On Error ステートメントでエラー処理をします。


RmDir【リムーブデレクトリー】ステートメント

フォルダーを削除するには
RmDir【リムーブデレクトリー】ステートメントを使用します。
フォルダー内にファイルがある場合はエラーになります。
フォルダー内にファイルがある場合はKillステートメントで
ファイルを削除してからRmDirステートメントでファルダーを削除します。
また、存在しないフォルダーを指定するとエラーになりますので
エラー処理が必要です。

RmDir【リムーブデレクトリー】ステートメントの書式

RmDir Path


設置値の説明

  • Path【パス】
    削除するフォルダー名を指定します。
    パスを含めて指定できます。
    フォルダー名のみ指定した場合は、カレントフォルダー内のフォルダーが
    削除されます。ドライブ名を省略するとカレントドライブ内の
    フォルダーが対象になります。

    コード例

    Sub ファイル削除()
    Dim ファイル名 As String
    Dim フォルダ名 As String
    フォルダ名 = ThisWorkbook.Path & "¥フォルダ"
    ファイル名 = フォルダ名 & "¥*.*"
    On Error GoTo エラー処理
    Kill PathName:=ファイル名
    RmDir Path:=フォルダ名
    MsgBox フォルダ名 & "削除しました。"
    Exit Sub
    エラー処理:
    MsgBox "フォルダがないか開かれています。"
    End Sub
    

    コードの解説

    マクロの記述されているこのブックと同じパスにある
    「フォルダ」フォルダーを削除するコードです。
    フォルダー内にファイルがあるとエラーになるので
    Killステートメントでファイルを削除します。
    フォルダー内のすべてのファイルを指定する場合は
    ワイルドカードを使用して「”¥*.*”」と記述します。
    フォルダー内のファイルを削除してから
    RmDirステートメントでフォルダーを削除します。


    以上で
    KillステートメントとRmDirステートメントについての解説を
    終了します。ありがとうございました。

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク