gpt4 book ai didi

VBA 列出子文件夹中的所有文件(快速方式),无需 FileSystemObject

转载 作者:行者123 更新时间:2023-12-02 01:59:44 25 4
gpt4 key购买 nike

我正在寻找一种快速列出文件夹子文件夹中所有文件的方法。基于 FileSystemObject 的方法太慢 - 从网络驱动器(内联网)列出 416 个文件名大约需要 6 分钟,据我了解 Dir() 函数不允许循环子文件夹。

最佳答案

改用CMD:

Sub SO()

Const parentFolder As String = "C:\Users\bloggsj\folder\" '// change as required, keep trailing slash

Dim results As String

results = CreateObject("WScript.Shell").Exec("CMD /C DIR """ & parentFolder & "*.*"" /S /B /A:-D").StdOut.ReadAll

Debug.Print results

'// uncomment to dump results into column A of spreadsheet instead:
'// Range("A1").Resize(UBound(Split(results, vbCrLf)), 1).Value = WorksheetFunction.Transpose(Split(results, vbCrLf))
'//-----------------------------------------------------------------
'// uncomment to filter certain files from results.
'// Const filterType As String = "*.exe"
'// Dim filterResults As String
'//
'// filterResults = Join(Filter(Split(results, vbCrLf), filterType), vbCrLf)
'//
'// Debug.Print filterResults
End Sub

关于VBA 列出子文件夹中的所有文件(快速方式),无需 FileSystemObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31132775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com