试图获取End(xlDown)+ 1行时,对象所需的错误

我有这个代码打开第一个工作簿,第二个工作簿,从第一个复制范围,并将其粘贴到第二个。 我想让它在第二个工作簿中的粘贴范围之后select单元格,但是它会失败并显示Object required错误。

 Sub tes() '**VARIABLES** Dim folderPath As String folderPath = "Y:\plan_graphs\final\mich_alco_test\files\" Dim fileTitle As String fileTitle = "5.xlsx" Dim dataWorkbook As Workbook Set dataWorkbook = Application.Workbooks.Open(folderPath & fileTitle) Dim copyRange As Range Set copyRange = dataWorkbook.Worksheets("List1").Range("A3:F3", Range("A3").End(xlDown)) Dim resultWorkbook As Workbook Set resultWorkbook = Application.Workbooks.Open("Y:\plan_graphs\final\mich_alco_test\result.xlsx") copyRange.Copy resultWorkbook.Worksheets("1").Range("A3").PasteSpecial Paste:=xlPasteFormulas Dim nextRange As Range Set nextRange = resultWorkbook.Worksheets("1").Range("A3:F3", _ resultWorkbook.Worksheets("1").Range("A3").End(xlDown)).Offset(1, 0).Select End Sub 

我究竟做错了什么?

您不能Set范围并在同一行中Select它,请尝试下面的代码部分:

 copyRange.Copy With resultWorkbook.Worksheets("1") .Range("A3").PasteSpecial Paste:=xlPasteFormulas Dim nextRange As Range Set nextRange = .Range("A3").End(xlDown).Offset(1, 0) ' set the Range first nextRange.Select ' <-- select the Range End With End Sub