ファイルを削除する。
FileSystemObjectのDeleteFileメソッドを利用しファイルを削除することができます。
DeleteFileには下記の引数が設定できます。
| 引数名 | 説明 | 省略 | |
| 第1引数 | folderspec | 削除するファイルパスの指定 | 不可 |
| 第2引数 | force | 読み取り専用属性の削除判定 True:削除する、False:削除しない(規定値) | 可 |
削除時にワイルドカードを使用して複数のファイルをまとめて削除させることもできます。
削除したいファイルが読み取り専用となってあり、削除できない場合は第2引数(force)に True を設定します。
●ファイルの削除
'******************************************************************
' ファイルの削除
'******************************************************************
Sub Main_DeleteFile()
'削除先のファイルパスの指定
Dim sFile As String
sFile = "C:\VBA\FSO\memo.txt"
'FileSystemObjectの作成
Dim oFso As Object
Set oFso = CreateObject("Scripting.FileSystemObject")
'ファイルの削除
Call oFso.DeleteFile(sFile)
End Sub●複数のファイルをまとめて削除
'******************************************************************
' ファイルの削除(まとめて削除)
'******************************************************************
Sub Main_DeleteFile_ALL()
'削除先のファイルパスの指定(ワイルドカード使用)
Dim sFile As String
sFile = "C:\VBA\FSO\memo*xt"
'FileSystemObjectの作成
Dim oFso As Object
Set oFso = CreateObject("Scripting.FileSystemObject")
'ファイルの削除
Call oFso.DeleteFile(sFile)
End Sub●読み取り専用のファイルの場合
'******************************************************************
' ファイルの削除(読み取り専用ファイルを削除)
'******************************************************************
Sub Main_DeleteFile_Force()
'削除先のファイルパスの指定
Dim sFile As String
sFile = "C:\VBA\FSO\memo.txt"
'FileSystemObjectの作成
Dim oFso As Object
Set oFso = CreateObject("Scripting.FileSystemObject")
'フォルダの削除
Call oFso.DeleteFile(sFile, True)
End Sub

