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 ステートメントでエラー処理をします。
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【リムーブデレクトリー】ステートメントについての解説を終了します。ありがとうございました。