我的电子表格中有一个PAYMENT列和一个MASTER LIST OF PAYMENT列。 PAYMENT列位于INPUT工作表中,而MASTER LIST列位于CASHFLOW工作表中。我们的想法是将输入范围从PAYMENT列复制到MASTER LIST列,粘贴MASTER LIST列的下一个BLANK ROW。
例如: 已完成3笔付款,数据为A1:A3。将A1:A3复制到MASTER LIST列A8:A10。再次,支付了3笔款项。但由于MASTER LIST列A8:A10已经有以前的数据。这次数据将粘贴到A11:A13。等等。
到目前为止,我已经制作了以下代码但是我成功地只复制并粘贴了一行(范围的第一行)。我尝试编辑它来复制细胞范围,但它给了我一个错误。有什么建议?谢谢!
Sub PAYMENTS_TRANSFER()
Response = MsgBox("Are you sure?", vbYesNo)
If Response = vbNo Then Exit Sub
Dim nextrow As Long
nextrow = Worksheets("Cashflow").Cells(Rows.Count, "A").End(xlUp).Row + 1
If nextrow < 8 Then nextrow = 8
Worksheets("Cashflow").Range("A" & nextrow).Value = Worksheets("Input").Range("A1").Value
End Sub
答案 0 :(得分:0)
您没有复制整个范围,因为您没有工作表中的底行号(“输入”)。 试试这个:
Sub PAYMENTS_TRANSFER()
Response = MsgBox("Are you sure?", vbYesNo)
If Response = vbNo Then Exit Sub
Dim nextrow As Long
nextrow = Worksheets("Cashflow").Cells(Rows.Count, "A").End(xlUp).Row + 1
lastrow = Worksheets("Input").Cells(Rows.Count, "A").End(xlUp).Row
If nextrow < 8 Then nextrow = 8
Worksheets("Cashflow").Range("A" & nextrow).Value = Worksheets("Input").Range("A1:A" & lastrow).Value
End Sub