pgbigorokuのブログ

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

EXCEL VBA 指定フォルダから、指定拡張子のファイルを返す(一番初めに見つかったファイル)

'
'   指定フォルダから、指定拡張子のファイルを返す(一番初めに見つかったファイル)
'
'[ツール]→[参照設定]→「Microsoft Scripting Runtime」にチェックを入れる
'
'2022/8/13
Private Function pstrフォルダ内から指定拡張子ファイル検索(ByVal pstr検索場所 As String, ByVal pstr拡張子 As String) As String

    Dim FSO As FileSystemObject
    Dim objFolder As Folder
    Dim subFile As File
    Dim strOneFile As String
    On Error GoTo errpstrフォルダ内から指定拡張子ファイル検索
    Set FSO = New FileSystemObject
    Set objFolder = FSO.GetFolder(pstr検索場所)

    'フォルダ内のサブフォルダをループ
    For Each subFile In objFolder.Files
        strOneFile = subFile.Name
        strOneFile = UCase(strOneFile)
        strOneFile = Right(strOneFile, Len(pstr拡張子) + 1)
        If strOneFile = "." & UCase(pstr拡張子) Then
            pstrフォルダ内から指定拡張子ファイル検索 = pstr検索場所 & "\" & subFile.Name
            Exit Function
        End If
    Next
    pstrフォルダ内から指定拡張子ファイル検索 = ""
Exit Function
errpstrフォルダ内から指定拡張子ファイル検索:
    pstrフォルダ内から指定拡張子ファイル検索 = ""
    Exit Function
    Resume Next
End Function