复制并粘贴用户定义的范围

有人可以帮助我复制和粘贴用户定义的范围。 我有下面的,但由于某种原因,当试图执行该操作时出现错误。 我怀疑我错过了一个小小的改变。 谢谢。

Sheets("Sheets1").Select Dim lngLastRow2 As Long lngLastRow2 = Cells(Rows.Count, "A").End(xlUp).Row Worksheets("Sheets2").Range("A3:A" & lngLastRow).Copy _ Destination:=ActiveSheet.Range(lngLastRow2) 

你在这里有一个错误:

 Destination:=ActiveSheet.Range(lngLastRow2) 

其中评估到。 .Range(x)其中x是一些Long 。 什么Range需要是类似.Range("A20")

一个解决scheme是将其更改为

 Destination:=ActiveSheet.Range("A" & lngLastRow2) 

或者另一个解决scheme是使用Rangevariables:

 Dim lastRow As Range Set lastRow = ThisWorkbook.Worksheets("Sheet1").Cells(Rows.Count, "A").End(xlUp) With ThisWorkbook.Worksheets("Sheet2") .Range("A3:A" & lastRow.Row).Copy Destination:=.Range(lastRow.Address) End With