VBA复制并粘贴到下一个空行

我试图写一个macros,从一个名为“报告”(数字将明显改变)复制同一行的信息,并将其粘贴到工作表“数据”,其中第一行标题。 我想获得值粘贴在下一个空行,我似乎无法得到它正常工作。

我试图拼凑一些来自各种问题的代码,无法弄清楚。

这是我的代码:

Sub Insert_Data() ' ' Insert_Data Macro Sheets("Report").Range("B9:F9").Copy Sheets("Data").Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub Sub PSData_Transfer() Sheets("Report").Range("B9:F9").Copy Dim lastrow As Long lastrow = Sheets("Data").Range("A65536").End(xlUp).Row Sheets("Data").Activate Cells(lastrow + 1, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False End Sub 

再次感谢你的帮助!

您可能需要修改这一点来处理您的代码,但是可以随意使用我在当前工作表中使用的我的代码,并且它非常完美!

 Sub Insert_Data() For R = LR To 2 Step -1 ' Change the 2 in "To 2" to the row just below your header, ' but typically row 2 is the second cell under header anyways Call CopyTo(Worksheets(2).Range("B" & R & ":C" & R), Worksheets(1)Range("A:B")) Next R End Sub Private Function CopyTo(rngSource As Range, rngDest As Range) LR = rngDest.cells(Rows.Count, 1).End(xlUp).row rngDest.cells(LR + 1, 1).value = rngSource.cells(1, 1).value rngDest.cells(LR + 1, 2).value = rngSource.cells(1, 2).value End Function 

我不喜欢使用复制方法,因为它很慢,它喜欢复制所有额外的jargin,因为获取值快得多,它只是检索值