宏粘贴到下一个可用行

时间:2018-12-18 14:49:04

标签: excel vba excel-vba pasting

我有一个宏,它从一个电子表格中复制数据,我想将其粘贴到主电子表格中的下一个可用行。但是,它粘贴在我填充的最后一行上。 当前在第620行上,我希望它粘贴到第621行上,然后下次运行宏(第622行,依此类推)

2019年,我将从新电子表格的第3行开始。

Sub Paste()
'
' Paste Macro
'

'
    Range("B24:AQ24").Select
    Selection.copy
    Windows("Sales  - 2018.xlsx").Activate
    ActiveWindow.SmallScroll Down:=3
    Range("B620").Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        True, Transpose:=False
    Windows( _
        "Invoice Company B Limited Partnership.xlsx" _
        ).Activate
End Sub

不确定如何定义代码中的下一个可用行。

感谢阅读。

1 个答案:

答案 0 :(得分:0)

您一直在B24:AQ24进行复制吗?

这将复制范围并将其粘贴到下一个空白行(基于B列中的数据) Sheet2中的Sales - 2018.xlsx

这是一行代码,在第一行的末尾有一个行继续符(_)。

Public Sub Paste()

    ThisWorkbook.Worksheets("Sheet1").Range("B24:AQ24").Copy _
        Workbooks("Sales - 2018.xlsx").Worksheets("Sheet2").Cells(Rows.Count, 2).End(xlUp).Offset(1)

End Sub

要从第3行开始,只需将标题添加到单元格B2中。

ThisWorkbook是指包含代码的工作簿。
您可能需要将其更改为Workbooks("Invoice Company B Limited Partnership.xlsx")(由于xlsx而不是xlsm,因此不包含任何代码。)