为了账号安全,请及时绑定邮箱和手机立即绑定

请问获取vba中的子目录列表。

请问获取vba中的子目录列表。

凤凰求蛊 2019-08-01 13:01:02
获取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贡献1804条经验 获得超7个赞

使用FileSystemObject会更好。我估计。

要调用它,只需说:列表文件夹“c:\data”

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




查看完整回答
反对 回复 2019-08-02
  • 3 回答
  • 0 关注
  • 359 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信