【ExcelVBA】サブフォルダ内も含めたファイル名の一覧出力(Scripting.FileSystemObject)
◆出力結果の例◆
E:\opencv\opencv331\sources\apps\traincascade\traincascade.cpp
E:\opencv\opencv331\sources\apps\traincascade\traincascade_features.h
E:\opencv\opencv331\sources\apps\version\CMakeLists.txt
E:\opencv\opencv331\sources\apps\version\opencv_version.cpp
E:\opencv\opencv331\sources\apps\visualisation\CMakeLists.txt
E:\opencv\opencv331\sources\apps\visualisation\opencv_visualisation.cpp
E:\opencv\opencv331\sources\apps\traincascade\traincascade_features.h
E:\opencv\opencv331\sources\apps\version\CMakeLists.txt
E:\opencv\opencv331\sources\apps\version\opencv_version.cpp
E:\opencv\opencv331\sources\apps\visualisation\CMakeLists.txt
E:\opencv\opencv331\sources\apps\visualisation\opencv_visualisation.cpp
イミディエイト画面に一行ずつ出力
Sub Sample() Call Recursive("E:\opencv\opencv331\sources\apps") End Sub Sub Recursive(Path As String) Dim SubF As Object Dim Buf As String Buf = Dir(Path & "\*.*") Do While Buf <> "" Debug.Print Path & "\" & Buf Buf = Dir() Loop With CreateObject("Scripting.FileSystemObject") For Each SubF In .GetFolder(Path).SubFolders Call Recursive(SubF.Path) Next SubF End With End Sub※3行目にフォルダパスを記入します。
※7行目のRecursiveプロシージャは、自分自身であるRecursiveプロシージャを再帰呼び出しすることによってフォルダパスからサブフォルダを取得していく構造になっています。
ディスカッション
コメント一覧
まだ、コメントがありません