将多个excel工作表组合到一个工作表中

时间:2014-02-10 18:58:00

标签: database excel vba excel-vba

我发现这个vba脚本用于将多个工作表的数据合并为一个主表

Sub Combine()
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1").EntireRow.Select
Selection.Replace Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub

但是在我的工作表中,前3行是类别标题,范围从A-BN开始。我想更改此代码或创建一个新代码来复制工作表中的数据,以便在主工作表中不重复这些类别标题。我只希望前3行作为标题,其余的是数据。

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

有人喜欢这个?

Sub Combine()
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1:C3").EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A1").Select
Selection.CurrentRegion.Select
Selection.Offset(3, 0).Resize(Selection.Rows.Count - 3).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub