フォルダの有無を確認する(ファイルとフォルダ)

フォルダに対する処理を行う際は、フォルダの有無を確認してから処理を行うことを推奨します。
存在しないフォルダにアクセスすると、エラーが発生して処理が止まってしまいます。
その対策として、フォルダの有無を確認してフォルダが有る場合に次の処理を行うようにします。

【関数化】

' ------------------------------------------------------------
' 説明:フォルダの有無を確認する
' 引数:1:確認するフォルダ名
' 戻値:フォルダがある場合:True
'       フォルダが無い場合:False
' ------------------------------------------------------------
Function IsFolderExists(foldername As String) As Boolean
    Dim fso As Scripting.FileSystemObject
    Set fso = New Scripting.FileSystemObject	    ' オブジェクトの作成
    IsFolderExists = fso.FolderExists(foldername)   ' フォルダの有無を確認
End Function

【補足】

Scripting.FileSystemObject を使用しています。
初期設定では、エラーが発生するので、参照設定「Microsoft Scripting Runtime」の設定が必要です。


ファイルの有無を確認する 場合はリンクを参照してください。

ファイルとフォルダのどちらかの有無を確認するには、組み合わせによって行います。

' ------------------------------------------------------------
' 説明:ファイルもしくはフォルダの有無を確認する
' 引数:1:確認するファイルもしくはフォルダ名
' 戻値:ファイルもしくはフォルダがある場合:True
'       ファイルもしくはフォルダが無い場合:False
' ------------------------------------------------------------
Function IsExists(name As String) As Boolean
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")

    If fso.FolderExists(name) = True Then   ' フォルダの有無を確認
        IsExists = True
    Else
        IsExists = fso.FileExists(name)     ' ファイルの有無を確認
    End If
End Function

コメント