Excel 粘贴最后一行中的数据
我正在尝试将数据从工作表(模板)粘贴到A列最后使用的单元格的工作表(主)上 但我似乎无法得到我想要的结果Excel 粘贴最后一行中的数据,excel,vba,Excel,Vba,我正在尝试将数据从工作表(模板)粘贴到A列最后使用的单元格的工作表(主)上 但我似乎无法得到我想要的结果 Dim lastrow As Long If Range("a1").Value = "A" Then Sheets("Template").Range("a1:e9").Copy lastrow = Cells(Rows.Count, 1).End(xlUp).Row Sheets("Main").Range("a" & lastrow).
Dim lastrow As Long
If Range("a1").Value = "A" Then
Sheets("Template").Range("a1:e9").Copy
lastrow = Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Main").Range("a" & lastrow).paste
End If
错误:
Sheets(“Main”).Range(“a”&lastrow)。粘贴
(对象不支持此属性或方法)尝试完全限定所有对象和变量(切勿假设或依赖ActiveSheet
)
另外,Copy
>Paste
是一个单行命令(不是两行)。如果要使用两行,请将第二行更改为PasteSpecial
(即使在您的情况下不需要)
如果您只需要获取数据的值,那么可以使用variant
Dim vDB as Variant
Dim rngT As Range
Dim Ws As Worksheet
vDB = Sheets("Template").Range("a1:e9")
Set Ws = Sheets("Main")
With Ws
If .Range("a1").Value = "A" Then
Set rngT = .Range("a" & Rows.Count).End(xlUp)(2) ' it's lastrow +1
rngT.Resize(UBound(vDB, 1), UBound(vDB, 2)) = vDB
End If
End With
你想要的结果是什么?你得到了什么?有错误吗?
Sheets(“Main”).Cells(Rows.Count,1)。End(xlUp)。Row
我使用了您的代码,它不再显示错误,但最后仍然没有粘贴任何内容row@Hank是工作表“模板”
=“A”
中单元格“A1”中的值吗?您今天着火了:D@SiddharthRout我只落后于你6年的知识(大约80K),但最后今天是“工作的好日子”,我可以专注于我的VBA.oops.Sheets(“模板”).Range(“A1:E9”).Copy destination:=Sheets(“Main”).Range(“a”和lastrow)Set rngT=.Range(“A1”和Rows.Count)。End(xlUp)(2)@Hank:error Set rngT=.Range(“a”和Rows.Count)。End(xlUp)(2)
Dim vDB as Variant
Dim rngT As Range
Dim Ws As Worksheet
vDB = Sheets("Template").Range("a1:e9")
Set Ws = Sheets("Main")
With Ws
If .Range("a1").Value = "A" Then
Set rngT = .Range("a" & Rows.Count).End(xlUp)(2) ' it's lastrow +1
rngT.Resize(UBound(vDB, 1), UBound(vDB, 2)) = vDB
End If
End With