Как получить последний измененный файл в каталоге с помощью VBA в Excel 2010 - PullRequest
4 голосов
/ 21 июня 2011

Я ищу способ сделать это в Excel 2010 с использованием VBA.

Раньше это было возможно в 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?

Спасибо

1 Ответ

6 голосов
/ 21 июня 2011

Если использование 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...