返回列表 上一主題 發帖

[發問] 多層資料夾尋找檔案的問題

本帖最後由 准提部林 於 2015-9-9 17:27 編輯

回復 13# ui123


2003以上沒了 FileSearch,對這多層搜檔實在頭痛,不是專行寫的,參考看看!
A1請先輸入〔檔案名稱.副檔名〕,僅搜索執行檔案同一層及以下子資料夾的檔案,
若與實際需求有不足點,請自行修改:
  1. Sub Get_File()
  2. Dim OBJ, xD, xFile$, Urr, U, G, GF, K, xB As Workbook
  3. Set OBJ = CreateObject("Scripting.FileSystemObject")
  4. Set xD = CreateObject("Scripting.Dictionary")
  5. Urr = Array(ThisWorkbook.Path)
  6.  
  7. RE_GET:
  8. For Each U In Urr
  9.   xFile = U & "\" & [A1].Value  '檔案夾路徑+A1檔名.副檔名
  10.   If Dir(xFile) <> "" Then Set xB = Workbooks.Open(xFile): Exit Sub  '找到檔案,開啟並跳出
  11.  
  12.   Set GF = OBJ.GetFolder(U).SubFolders   '取得本層子資夾
  13.   If GF.Count > 0 Then     
  14.     For Each G In GF: K = K + 1: xD(K) = G.Path: Next  '將子資料夾納入字典檔
  15.   End If
  16. Next
  17.  
  18. If K > 0 Then Urr = xD.items: xD.RemoveAll: K = 0: GoTo RE_GET '若字典檔有內容,再去找檔案
  19. MsgBox "找不到目標檔案! "
  20. End Sub
複製代碼
 

TOP

回復 16# ikboy

那個CMD的也不太懂, 試著寫, 參考看看:
http://forum.twbts.com/thread-15063-1-1.html

TOP

        靜思自在 : 我們要做好社會的環保,也要做好內心的環保。
返回列表 上一主題