pgbigorokuのブログ

プログラムの再利用できそうなコードをアップ

EXCEL VBA ファイルの存在確認(フォルダとファイル分けた状態から)


サンプル

    Debug.Print nblnファイル存在確認フォルダファイル別("C:\", "install.ini")                  'TRUE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\df141\", "DF.exe")  'TRUE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\df141", "DF.exe")  'TRUE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\df141", "df.exe")  'TRUE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\df141\", "nai.exe")  'FALSE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\df141\df.exe", "") 'FALSE
    Debug.Print nblnファイル存在確認フォルダファイル別("", "C:\Program Files\df141\df.exe") 'FALSE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files\7-Zip\", "7z.exe") 'TRUE
    Debug.Print nblnファイル存在確認フォルダファイル別("C:\Program Files", "7-Zip\7z.exe") 'FALSE


関連
 フォルダとファイルを分けないバージョン
 EXCEL VBA ファイルの存在確認 - pgbigorokuのブログ


必要ソースコード
 
EXCEL VBA ファイルの存在確認 - pgbigorokuのブログ




ソースコード

'
'   機能   :  ファイルの存在確認(フォルダとファイル分けた状態から)
'
'    返り値  :     TRUE:ファイルがあるとき
'                    FALSE:ファイルがないとき
'    引き数  :    ByVal pstrフォルダ As String 確認するファイルのフォルダ名
'                   ByVal pstrファイル As String 確認するファイルのファイル名(フォルダ名記載なし)
'    機能説明 :     ワイルドカードは使えません
'
'
'    備考   :     -
'
'    この関数のURL  :https://pgbigoroku.hatenablog.com/entry/2022/08/18/081031
'
'    この関数を利用するために必要な関数:https://pgbigoroku.hatenablog.com/entry/2022/08/17/005434
'
'    バージョン  :2022/8/18
'
Public Function nblnファイル存在確認フォルダファイル別(ByVal pstrフォルダ As String, ByVal pstrファイル As String) As Boolean
    Dim strFullPass As String
    'エラー関係をはじく
    If InStr(pstrファイル, "\") > 0 Then
        nblnファイル存在確認フォルダファイル別 = False
        Exit Function
    End If
    If pstrファイル = "" Then
        nblnファイル存在確認フォルダファイル別 = False
        Exit Function
    End If
    If pstrフォルダ = "" Then
        nblnファイル存在確認フォルダファイル別 = False
        Exit Function
    End If
    
    If Right(pstrフォルダ, 1) = "\" Then
        strFullPass = pstrフォルダ & pstrファイル
    Else
        strFullPass = pstrフォルダ & "\" & pstrファイル
    End If
    nblnファイル存在確認フォルダファイル別 = nblnファイル存在確認(strFullPass)
End Function