我有一本工作簿,其中包含许多名称不同的工作表,需要将它们合并成一张工作表。我发现这段代码非常有用,除了我需要它忽略名为“ COMMAND”的表(用于其他目的)。该代码当前将创建一个名为“ Combined”的工作表,并将所有工作表合并到该工作表中,但是如果不需要每次都需要创建和删除“合并工作表”,我希望使用它。因此,需要澄清的是,此工作簿中的所有工作表都需要合并到“合并的”工作表中,但称为“ COMMAND”的工作表除外。
Private 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.Copy 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
答案 0 :(得分:0)
代替Sheets(1)。选择,您可以使用下面的代码并将工作表名称更改为第一个工作簿上的工作表名称。
ThisWorkbook.Sheets(“ Sheet1”)。Copy
答案 1 :(得分:0)
您可以尝试:
objects as! AnyHashable