FSO 指定したディレクトリ内のすべてのサブフォルダを取得

※より実装に近く表示させる為、コードの改行を避けています。スマホ等で閲覧される際は向きを変えてご覧ください。

※実装するバージョンによってはバージョンアップの仕様により動作しないコードもあります。実装には動作確認の上ご使用下さい。

Option Explicit


Sub 指定フォルダサブフォルダ取得()
'***************************************************
'指定したディレクトリ内のすべてのサブフォルダを取得
'***************************************************
'*Visual Basic 6.0 及び VBA
'*[参照設定] 「Microsoft Scripting Runtime」チェック
'*FileSystemObject の SubFolders メソッド

Dim lIndex As Long
Dim hFolder As Folder
Dim subFolder As Folder
Dim Fso As FileSystemObject

Set Fso = New FileSystemObject
Set hFolder = Fso.GetFolder(ThisWorkbook.Path & "\")

    lIndex = 1 '(使用により数値を変更)
        For Each subFolder In hFolder.SubFolders
'            Debug.Print subFolder.Path’フルパス&フォルダ名の場合
            Debug.Print subFolder.Name 'フォルダ名のみの場合
            lIndex = lIndex + 1
        Next subFolder

Set Fso = Nothing
Set subFolder = Nothing
Set hFolder = Nothing

End Sub



 

2000年01月01日|[VBサンプルコード]:[FSO]