我想使用 Excel 2010 中的 vba 循环遍历目录的文件。在循环中,我需要:文件名和文件格式化的日期。我已编写了以下代码...
Excel 2010 中的 vba 循环遍历目录的文件
在循环中,我需要:
我编写了以下代码,如果文件夹中的文件不超过 50 个,则运行良好,否则速度会非常慢(我需要它处理包含超过 10000 个文件的文件夹)。此代码的唯一问题是查找操作 file.name
需要花费大量时间。
代码可以运行但是速度太慢了(每 100 个文件需要 15 秒):
Sub LoopThroughFiles()
Dim MyObj As Object, MySource As Object, file As Variant
Set MySource = MyObj.GetFolder("c:\testfolder\")
For Each file In MySource.Files
If InStr(file.name, "test") > 0 Then
MsgBox "found"
Exit Sub
End If
Next file
End Sub
问题解决:
Dir
特定方式(15000 个文件需要 20 秒)并使用命令检查时间戳 FileDateTime
.