Использование DIR
, вероятно, имеет небольшое преимущество в производительности, но если вы хотите использовать существующий код, то следующая подстройка к сабвуферу getfiledetails
даст вам желаемый результат:
Function getfiledetails(objFolder As Scripting.Folder)
Dim objFile As Scripting.File
Dim nextRow As Long
Dim objSubFolder As Scripting.Folder
nextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
On Error Resume Next
For Each objFile In objFolder.Files
If objFile.Type = "Text Document" Then
Cells(nextRow, 1) = objFile.Name
Cells(nextRow, 2) = objFile.Path
Cells(nextRow, 3) = objFile.Type
Cells(nextRow, 4) = objFile.DateCreated
Cells(nextRow, 5) = objFile.DateLastModified
nextRow = nextRow + 1
End If
Next objFile
For Each objSubFolder In objFolder.SubFolders
Call getfiledetails(objSubFolder)
Next
End Function
Этоможет быть добавлено, если вы хотите использовать несколько типов документов, например ..
If objFile.Type = "Microsoft Word Document" Or objFile.Type = "Text Document" Then