HOME > 即効テクニック > AccessVBA > ファイル操作・他アプリケーションとの連携 > フォルダ内のファイル(データベース)をすべて検索する

即効テクニック

ファイル操作・他アプリケーションとの連携

フォルダ内のファイル(データベース)をすべて検索する

(Access 97)
●詳細●
フォルダ内のファイルを取得する時は、Dir関数を使います。
サンプルでは、特定のフォルダ内にあるデータベース名をすべてイミディエイトウィンドウに出力しています。

●サンプル●
Sub Sample()
    Dim myFName As String
    
    myFName = Dir("C:\AccessVBA\*.mdb")

    Do While myFName <> ""
        
        Debug.Print myFName
        
        myFName = Dir()

    Loop

End Sub

●補足説明●
Dir関数の構文は次のとおりです。

<構文> Dir(pathname, attributes)

引数pathnameには、検索するファイル名を指定し、引数attributesには、ファイルの属性を指定します。定数と内容は次のとおりです。

定数    値  内容 
vbNormal  0  標準ファイル 
vbReadOnly 1  読み取り専用ファイル 
vbHidden  2  隠しファイル 
vbSystem  4  システムファイル
vbVolume  8  ボリュームラベル
vbDirectory 16  フォルダ 

引数pathnameには、ワイルドカード文字を使用することができるので、サンプルではアスタリスクを使って、パターン検索をしています。
最初に検索できたファイル名のみ返すので、続けて複数のファイルを検索する場合は、「Cir()」として、ループ処理を行います。