獲取vba中的子目錄列表。我想要一個目錄中所有子目錄的列表。如果可以的話,我想將它擴展為遞歸函數。然而,我最初獲得子目錄的方法失敗了。它只顯示包括文件在內的所有內容:sDir = Dir(sPath, vbDirectory)Do Until LenB(sDir) = 0
Debug.Print sDir
sDir = DirLoop列表以“.”開頭和幾個文件夾并以‘.txt’文件結尾。編輯:我要補充的是,這必須在Word中運行,而不是在Excel中運行(許多函數在Word中是不可用的),而且它是Office 2010。編輯2:可以使用iAtt = GetAttr(sPath & sDir)If CBool(iAtt And vbDirectory) Then
...End If但這給我帶來了新的問題,所以我現在使用基于Scripting.FileSystemObject.
3 回答
楊__羊羊
TA貢獻1943條經驗 獲得超7個贊
Sub listfolders(startfolder)''Reference Windows Script Host Object Model''If you prefer, just Dim everything as Object''and use CreateObject("Scripting.FileSystemObject")Dim fs As New FileSystemObjectDim fl1 As FolderDim fl2 As FolderSet fl1 = fs.GetFolder(startfolder)For Each fl2 In fl1.SubFolders
Debug.Print fl2.Path
listfolders fl2.PathNextEnd Sub添加回答
舉報
0/150
提交
取消
