我正在寻找一种使用VBA在Excel 2010中执行此操作的方法。
以前可以在Excel 2003中使用Application.FileSearch方法,但这已经过折旧。 (见下文)
Dim sFileName As String
sFileName = ""
With Application.FileSearch
.NewSearch
.LookIn = sDir
.Filename = "*.*"
.Execute msoSortByLastModified, msoSortOrderDescending
If .FoundFiles.Count > 0 Then sFileName = .FoundFiles(1)
End With
如何在Excel 2010中执行此操作?
由于
答案 0 :(得分:6)
如果可以使用FileSystemObject,则可以使用here描述的方法。
总结:
Dim fso As Scripting.FileSystemObject
Dim fol As Scripting.Folder
Dim fdr As Scripting.Folder
Dim fil As Scripting.File
Dim flc As Scripting.Folders
Set fso = CreateObject("Scripting.FileSystemObject")
Set fol = fso.GetFolder("YourPathName")
Set flc = fol.SubFolders
For Each fdr In flc
For Each fil In fdr.Files
Debug.Print fil.DateLastModified
Next fil
Next fdr
Set fso = Nothing
Set fol = Nothing
Set flc = Nothing