分享

检索指定目录下的文件或文件夹

 今天George 2018-04-05


      刚开始时一直使用第一种,然后每次打开指定的目录就会鼠标一直转,纠结。后来发现第二种,瞬间清爽。

     

第一种:判断目录较多,效率慢:


'遍历某文件夹及子文件夹中的所有文件
Sub SoSuoFile(MyPath As String)
    Dim Myname As String
    Dim a As String
    Dim B() As String
    Dim dir_i() As String
    Dim I, idir As Long
    If Right(MyPath, 1) <> '\' Then MyPath = MyPath '\'
    Myname = Dir(MyPath, vbDirectory or vbHidden or vbNormal or vbReadOnly)
    Do While Myname <> ''
        If Myname <> '.' And Myname <> '..' Then
            If (GetAttr(MyPath & Myname) And vbDirectory) = vbDirectory Then    '如果找到的是目录
                idir = idir 1
                ReDim Preserve dir_i(idir) As String
                dir_i(idir - 1) = Myname
            Else

                Forms!F_PPAP_附件.List3.AddItem Myname    '把找到的文件显示到列表框中

            End If
        End If
        Myname = Dir    '搜索下一项
    Loop
    
    For I = 0 To idir - 1
        Call SoSuoFile(MyPath dir_i(I))
    Next I
    ReDim dir_i(0) As String
    
End Sub


第二种:


    Dim s As String
    s = Dir(folderProject & '\', vbDirectory vbNormal vbReadOnly)
    Do While s <> ''
        If s <> '.' And s <> '..' Then      ''.'和'..',表示当前目录和上层目录
'            Debug.Print '000----'; s
            Me.List3.AddItem s
       End If
       s = Dir
    Loop



Access推荐资源

Access初学者学习计划

Access学习护航计划

Access 与 Excel 之对比

Access专家课堂操作指南

Access快速开发一日通 视频教程

Access职场实战范例 视频教程

Access开发心得

色母粒进销存管理系统

财务数据管理平台

供应链及关务管理系统

Access培训讲师




        

    

      张志,2003年-2013连续10年获选微软最有价值专家,Access数据库培训讲师,十余年Access数据库培训经验,服务过的知名企业有北京奔驰、立达(中国)纺织仪器有限公司、中信泰富特钢集团等。

Access软件公司

上海盟威软件有限公司(www.UMVsoft.com),专注于Access培训及为客户用Access定制开发软件。由微软最有价值专家团队创建,设有江阴分公司、株洲分公司。公司自主研发了国内第一款Access开发平台(盟威软件快速开发平台),利用此平台,零基础的人士可以开发出专业的管理类软件,让管理人才转型为“精管理 会编程”的复合型人才。



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多