構文
Dir[(pathname[,attributes])]
引数pathnameは省略可能です。ファイル名やフォルダ名を表す文字列式を指定します。
引数attributesは省略可能です。取得するファイルの属性を表す数式もしくは定数を指定します。
解説
指定したファイルまたはフォルダの名前を返します。
引数pathnameにはワイルドカードを使用できます。
引数 attributes の設定値は次のとおりです。
| 定数 | 値 | 内容 |
|---|---|---|
| vbNormal | 0 | 標準ファイル |
| vbHidden | 2 | 隠しファイル |
| vbSystem | 4 | システムファイル |
| vbVolume | 8 | ボリュームラベル |
| vbDirectory | 16 | フォルダ |
引数attributesにボリュームラベルをしてすると、他の属性は無効になります。
Dir関数は、引数pathnameで指定したファイル名と一致した最初のファイル名を返します。続けて次のファイルを取得するときには、Dir関数に引数を与えずに実行します。
該当するファイルが見つからないとき、Dir関数は長さ0の文字列を返します。長さ0の文字列を返した直後、あるいは始めてDir関数を実行するときに引数を省略するとエラーが発生します。
Dir関数を再帰的に呼び出すことはできません。
サンプル
次の例は、C:\Windowsフォルダ内にあるファイルのうち、Wで始まるファイル名の数を表示します。
Sub Sample()
Dim cnt As Integer, tmp As String
tmp = Dir("C:\Windows\W*.*")
Do While tmp <> ""
cnt = cnt + 1
tmp = Dir()
Loop
MsgBox "Wで始まるファイルは" & cnt & "個あります"
End Sub