- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
|
2#
發表於 2011-7-18 09:45
| 只看該作者
回復 1# xyzw7
試試看- Sub Ex()
- Dim MyPath As String, Fs As Object, xlFolder As Object, xlfile As Object
- With Application.FileDialog(msoFileDialogFolderPicker) '檔案對話方塊-> 限定資料夾
- .AllowMultiSelect = False '限定單一選擇
- .Show '顯示 檔案對話方塊
- If .SelectedItems.Count = 0 Then Exit Sub '沒選擇離開程式
- MyPath = .SelectedItems(1) '所選擇的資料夾
- End With
- 'FileSystemObject 物件 提供對電腦檔案系統的存取。
- Set Fs = CreateObject("Scripting.FileSystemObject").GetFolder(MyPath) '取得指定路徑中文字件夾相對應到的 Folder(資料夾) 物件。
- For Each xlFolder In Fs.subfolders 'Fs.subfolders -> Fs的資料夾集合物件
- 'Each xlFolder 依序處裡每一子資料夾
- For Each xlfile In xlFolder.Files 'xlFolder.Files 每一子資料夾的檔案集合物件
- 'Each xlfile 依序處裡每一子資料夾的檔案
- If xlfile.Name Like "*@0.#*.csv" Then Workbooks.Open xlfile.FullName
- 'xlfile.Name Like "*@0.#*.csv" 檔案名稱相似的文字格式
- '* 代表 零個以上的字元 ,# 任一個數字(0-9)。
- Next
- Next
- End Sub
複製代碼 |
|