我正在编译多个工作表中的数据以放置在一个合并工作表上。第一张纸是很容易的,因为我可以粘贴整张纸然后它变得棘手,因为我只需要从A5-H ###,因为我不再需要标题。然后,我需要将此信息粘贴到上一个粘贴的底部。我正在获得一系列对象" _Global" '范围(lastRow)失败。选择'。问题是,当我在调试器中查看它时,它会提供正确的行号。我究竟做错了什么?
Sheets(1).Select
Cells.Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Consolidation Sheet").Select
Range("A1").Select
ActiveSheet.Paste
Sheets(2).Select
Range("A5:A925").Select
Range(Selection, Selection.End(xlToRight)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Consolidation Sheet").Select
Range("A5").Select
lastRow = ActiveSheet.Cells(Rows.Count, "E").End(xlUp).Row + 1
Range(lastRow).Select
ActiveSheet.Paste
答案 0 :(得分:2)
您需要使用以下表单中的Range
语句(例如):
Range("A1").Select
因为您已获得行号(lastRow
),您只需要添加列引用:
Range("E" & lastRow).Select
额外信息
Avoid using Select直接引用您要处理的工作表/范围
Sheets(1).Cells.Copy Destination:=Sheets("Consolidation Sheet").Range("A1")
With Sheets(2)
.Range(.Range("A5:A925"),.Range("A5:A925").End(xlToRight)).Copy
End With
With Sheets("Consolidation Sheet")
.Cells(.Rows.Count, "E").End(xlUp).Offset(1,0).PasteSpecial
End With