VBA – 将文件夹列表导入到excel范围

我目前正在处理一个macros,该文件从当前工作目录中名为“simulations”的文件夹中的许多子文件夹导入文件。 我所拥有的代码正在为我所需要的一切工作,除了将文件列表导入到excel的最后一步之外。

目前,我有一个macros读取手动使用cmd行创build的文件:

> dir /b > foldernames.txt 

然后我在另一个Excel窗口中打开这个文件,然后将范围复制到我当前的Excel工作簿中。 这似乎是一个缓慢,迂回的做法,我正在寻找可以规避这个问题的macros观解决scheme。

我已经尝试了一些代码组合使用的东西,如:

 Dim Fold As Folder Dim FS As FileSystemObject 

我怀疑大多数我尝试过的语法与2007年以后不兼容。 是否有某些function对这个应用程序有帮助? 我不需要写代码,只是关于适用的function的build议,所以我可以玩这些。

我们通过Shell运行CMD命令

 Sub RunDir() x = Shell("cmd.exe /c dir /b > C:\TestFolder\foldernames.txt", 1) Close #1 Open "C:\TestFolder\foldernames.txt" For Input As #1 j = 1 Do While Not EOF(1) Line Input #1, TextLine Cells(j, 1) = TextLine j = j + 1 Loop Close #1 End Sub 

我使用TestFolder作为Dir的目的地…………..select你自己的