標題:
[發問]
EXCEL 檔案合併
[打印本頁]
作者:
eg0802
時間:
2012-5-23 16:45
標題:
EXCEL 檔案合併
請問一下 如何把多個excel檔案 合併成1個活頁簿裡面有多個工作表?
作者:
register313
時間:
2012-5-23 19:10
回復
1#
eg0802
利用VBA
Sub MergeBook()
Dim MyPath$, MyName$, wb As Workbook, sh As Worksheet, sht As Worksheet
Set wb = ThisWorkbook
MyPath = ThisWorkbook.Path & "\"
MyName = Dir(MyPath & "*.xls")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each sh In Sheets
If sh.Name <> ActiveSheet.Name Then sh.Delete
Next
Do While MyName <> ""
If MyName <> ThisWorkbook.Name Then
With GetObject(MyPath & MyName)
For Each sht In .Sheets
sht.Copy After:=wb.Sheets(wb.Sheets.Count)
Next
.Close False
End With
End If
MyName = Dir
Loop
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
複製代碼
[attach]11111[/attach]
作者:
eg0802
時間:
2012-5-24 09:26
回復
2#
register313
r大 小弟不才....完全不會用vba.....能否教我如何使用?
作者:
eg0802
時間:
2012-5-24 09:40
回復
2#
register313
R大 再請教一下,我剛測試一下你的檔案,我把檔案放到桌面,發現幾乎把所有的EXCEL 都合併再一起,看了一下合併的內容,都是桌面上的EXCEL檔案,我想我明白該如何使用此功能了,再次感謝!!!!
能否再請教一個問題 如果我合併後,統一修改好資料,要把活頁簿再分散為個別檔來該如何做呢?
作者:
alumi
時間:
2012-5-24 12:24
回復
2#
register313
請問, 可否解釋一下這段:
.MyPath = ThisWorkbook.Path & "\"
.MyName = Dir(MyPath & "*.xls")
-----------------------------------------
這個程式碼的用意, 是在取得 目前工作路徑下 的 "第一個 excel 檔案"的 完整路徑與 名稱嗎?
作者:
register313
時間:
2012-5-24 21:08
回復
5#
alumi
正確
作者:
kakala0513
時間:
2012-6-1 09:59
最近被公司的資料搞得頭昏腦脹
看到這個真的讓我又學到了很多~
感謝每位先進的分享
作者:
alex_wu
時間:
2012-6-2 00:11
讚,超級方便 好用
作者:
qwern
時間:
2012-7-8 15:13
那如果是把多個檔案合併在同一個活頁簿裡面呢 不要分很多個工作表 只要一個
作者:
tacula
時間:
2013-3-18 17:01
回復
2#
register313
謝謝你提供好工具
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)