ファイルの存在チェックをする構文
ファイルの存在チェックをする構文は次のとおり。FileSystemObjectを使用します。
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Call fso.moveFile("移動元ファイルパス", "移動先ファイルパス") 'ファイルパスはフルパス
Set fso = Nothing
ファイルを移動する関数
ファイルを移動する関数です。
移動先にファイルがあった場合に、「上書きする」か「しない」か制御できるようになっています。
引数 fromDir:移動元のファイルパス
引数 toDir:移動先のファイルパス
引数 overWriteFlg:上書きするかのフラグ(True:上書き、False:上書きしない)。設定しない場合、上書きしない。
Public Function moveFile(ByVal fromDir As String, ByVal toDir As String, Optional ByVal overWriteFlg As Boolean = False) As Boolean
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
'ファイル存在確認
If fso.FileExists(toDir) = True Then
If overWriteFlg = False Then
'存在&上書きフラグ=Falseの時:処理中断
moveFile = False
Exit Function
Else
'存在&上書きフラグ=Trueの時:ファイル削除
Kill toDir
End If
End If
'移動処理
Call fso.moveFile(fromDir, toDir)
Set fso = Nothing
moveFile = True
End Function
実行例
Debug.Print moveFile("C:\test\testfile.txt", "C:\test2\testfile.txt")
' True