- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
6#
發表於 2013-11-10 19:52
| 只看該作者
回復 5# ui123
試試看- Option Explicit
- Sub Ex()
- Dim xFileAr, i As Integer, x As Integer, S As Integer
- Dim wB As Workbook
- With Application.FileDialog(msoFileDialogFilePicker) '選資料夾的視窗
- Do '迴圈: 可多次選資料夾
- .Show '顯示:資料夾的視窗
- For i = 1 To .SelectedItems.Count '選擇的檔案之個數
- xFileAr = xFileAr & "," & .SelectedItems(i) '紀錄字串:選擇的檔案之完整路徑
- Next
- Loop Until .SelectedItems.Count = 0 '一直到沒有選擇檔案
- If xFileAr = "" Then Exit Sub
- End With
- xFileAr = Split(Mid(xFileAr, 2), ",") '紀錄選擇的檔案字串轉換為陣列
- Set wB = ThisWorkbook '這程式碼所在的活頁簿 '或是 Workbooks("AAA.XLS") '多個excel放在一個excel
- For i = 0 To UBound(xFileAr)
- With Workbooks.Open(xFileAr(i)) '要開啟的多個excel...
- x = wB.Sheets.Count '這活頁簿的工作表數量
- For S = 1 To .Sheets.Count
- .Sheets(S).Copy wB.Sheets(x) '工作表複製,
- ActiveWorkbook.ActiveSheet.Name = .Name & "_" & .Sheets(S).Name
- Next
- .Close False
- End With
- Next
- End Sub
複製代碼 |
|