VBA合併工作表(含標題列)
當有多個工作表時,如何使用VBA快速合併多個工作表資料,且不重覆各工作表的標題列?
如:想將工作表1月~5月資料合併在同一工作表內,且因標題列重覆,只想從其中一個工作表複製出標題列。
輸入巨集
※輸入以下指令※
Sub 合併工作表()
Sheets.Add before:=Sheets(1)
Sheets(1).Name = “合併工作表”
Sheets(2).Activate
Range(“A1”).EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range(“A1”)
For i = 2 To Sheets.Count
Sheets(i).Activate
Range(“A1”).Select
Selection.CurrentRegion.Select
Selection.Offset(1).Resize(Selection.Rows.Count – 1).Select
Selection.Copy Destination:=Sheets(1).Range(“A10000”).End(xlUp).Offset(1)
Next
Sheets(“合併工作表”).Select
End Sub
語法說明
Sheets.Add before:=Sheets(1)
‘建立工作表至第一個工作表前面,也就是放到第一個工作表
Sheets(1).Name = “合併工作表”
‘將第一個工作表名稱命名為合併工作表
Range(“A1”).EntireRow.Select
‘選取A1儲存格的整列
Selection.Copy Destination:=Sheets(1).Range(“A1”)
‘選取區域複製到第一個工作表的A1儲存格,即複製出標題列
Selection.CurrentRegion.Select
‘選取目前區域的儲存格
Selection.Offset(1, 0).Resize(Selection.Rows.Count – 1).Select
‘目前選取的儲存格向下一格,且調整儲存格範圍-減少一列,即選取標題列以下的儲存格。
Selection.Copy Destination:=Sheets(1).Range(“A10000”).End(xlUp).Offset(1)
‘選取區域複製到第一個工作表A10000儲存格向上有資料的儲存格,並且再下移一格,也就是接續往下複製出資料,若資料超出10000筆,需再將數值改大
Sheets(“合併工作表”).Select
‘選取「合併工作表」
執行合併
點選「開發人員」-「巨集」或按下「Ctrl」+「F8」快捷鍵,並「執行」巨集。
執行後即新增出「合併工作表」,並將工作表1月~5月資料合併此工作表內,且不重覆複製到標題列。