如何在Excel 2010中使用VBA在目录中获取最后修改的文件

Irf*_*rfy 4 excel vba file-search excel-2010

我正在寻找一种方法来使用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
Run Code Online (Sandbox Code Playgroud)

有任何想法如何在Excel 2010中执行此操作?

谢谢

Ric*_*gan 6

如果可以使用FileSystemObject,则可以使用此处描述的方法.

总结一下:

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
Run Code Online (Sandbox Code Playgroud)