多個Excel文件合併成一個文件檔案
阿新 • • 發佈:2018-12-08
Sub Macro1() Dim MyPath$, MyName$, sh As Worksheet, sht As Worksheet, m& Set sh = ActiveSheet MyPath = ThisWorkbook.Path & "\" MyName = Dir(MyPath & "*.xls") Application.ScreenUpdating = False Cells.ClearContents Do While MyName <> "" If MyName <> ThisWorkbook.Name Then With GetObject(MyPath & MyName) For Each sht In .Sheets If IsSheetEmpty = IsEmpty(sht.UsedRange) Then m = m + 1 If m = 1 Then sht.[a1].CurrentRegion.Copy sh.[a1] Else sht.[a1].CurrentRegion.Copy sh.[a65536].End(xlUp).Offset(1) End If End If Next .Close False End With End If MyName = Dir Loop Application.ScreenUpdating = True End Sub
在第四行 MyName = Dir(MyPath & "*.xls") 將*.xls修改為*.xlsx和*.csv可分別合併07版本以後的Excel檔案和csv檔案
步驟:
1、先把將要合併的多個Excel文件放在同一個資料夾中,然後再資料夾中建立一個新的Excel文件並開啟
2、在sheet1工作表右鍵點選“檢視程式碼”,將上面的程式碼貼上進去
3、程式碼視窗的選單欄點選“執行”--“執行子過程/使用者窗體”或者直接按F5
就可以看到合併後的資料呈現在新的工作表中,點選儲存,可能會出現下圖的情況.....點選“是”