我試過並通過vba論壇進行搜索以找出如何糾正我的代碼(下面)來搜索特定目錄及其子目錄中的文件列出並填充文件名列表,文件名長度爲20個字符,只是pdf擴展名。在工作表中列出特定目錄和字符數的名稱和路徑
我想還沒有在A列中沒有擴展名在年底和全文件路徑和名稱在列B
還試圖創建的列表,然後又上升的所有文件進行排序,但沒有成功,列出文件:( 任何幫助,感謝
Sub ListPDF()
Range("A:L").ClearContents
Range("A1").Select
Dim strPath As String
strPath = "K:\Test\PDF\"
Dim OBJ As Object, Folder As Object, File As Object
Set OBJ = CreateObject("Scripting.FileSystemObject")
Set Folder = OBJ.GetFolder(strPath)
Call ListFiles(Folder)
Dim SubFolder As Object
For Each SubFolder In Folder.Subfolders
Call ListFiles(SubFolder)
Call GetSubFolders(SubFolder)
Next SubFolder
Range("A1").Select
End Sub
Sub ListFiles(ByRef Folder As Object)
For Each File In Folder.Files
ActiveCell.Offset(1, 0).Select
ActiveCell.Offset(0, 0) = File.Name
ActiveCell.Offset(0, 1) = File.Path
Next File
End Sub
Sub GetSubFolders(ByRef SubFolder As Object)
Dim FolderItem As Object
For Each FolderItem In SubFolder.Subfolders
Call ListFiles(FolderItem)
Call GetSubFolders(FolderItem)
Next FolderItem
End Sub
嗨馬特,能澄清一點嗎?你提到你只需要一個.pdf文件列表,但是你提到了一個沒有擴展名的列表。這是否意味着你需要.pdf文件和沒有擴展名的文件? – Dman
嗨德曼,不,我只想列出PDF文件。有沒有什麼辦法可以將這個pdf文件顯示到列A中,而不需要擴展名。類似於Right公式從代碼中的文件列表中刪除.pdf。這是否明確否? – Matt