フォルダ内のすべてのディレクトリとファイルを取得する
スポンサーリンク
VB6 では、SubFolder プロパティ と Files プロパティを使用して列挙することになります。使い道はないかとは思いますが .NET Framework の GetFileSystemEntries メソッドに合わせています。
FileSystemObject を使用する場合は、[プロジェクト] メニューの [参照設定] を選択して「Microsoft Scripting Runtime」にチェックを付けてください。
サンプルコード
以下にサンプルコードを示します。
VB6.0 以前
' FileSystemObject (FSO) の新しいインスタンスを生成する
Dim cFso As FileSystemObject
Set cFso = New FileSystemObject
' Folder オブジェクトを取得する
Dim cRootFolder As Folder
Set cRootFolder = cFso.GetFolder("C:\Hoge\")
' 不要になった時点で参照を解放する (Terminate イベントを早めに起こす)
Set cFso = Nothing
Dim stPrompt As String
Dim cSubFolder As Folder
' すべてのディレクトリを列挙する
For Each cSubFolder In cRootFolder.SubFolders
stPrompt = stPrompt & cSubFolder.Path & vbNewLine
Next cSubFolder
' 不要になった時点で参照を解放する (Terminate イベントを早めに起こす)
Set cSubFolder = Nothing
Dim cFile As File
' すべてのファイルを列挙する
For Each cFile In cRootFolder.Files
stPrompt = stPrompt & cFile.Path & vbNewLine
Next cFile
' 不要になった時点で参照を解放する (Terminate イベントを早めに起こす)
Set cRootFolder = Nothing
Set cFile = Nothing
' 取得したすべてのファイルパスを表示する
Call MsgBox(stPrompt)
関連するリファレンス
準備中です。
