繁体   English   中英

从工作表中一个表格的最后一行复制/粘贴到另一最后一行

[英]Copy/Paste from last row in one table in worksheet to another last row

我的问题是目的地。 复制的行直接转到另一个工作表中的同一行#,而不是该工作表表的最后一行。

Sub Test()

    Dim data As Worksheet
    Dim table As Worksheet
    Dim lastRow As Integer

    Set data = Worksheets("Data Input")
    Set table = Worksheets("Data Tables")

    ActiveWorkbook.RefreshAll
    Application.ScreenUpdating = False

    'Goes to last row containing data in sheet Data Input
    lastRow = data.Cells(Rows.Count, 1).End(xlUp).Row

    'Same as above but for Data Tables
    sidsteRow = table.Cells(Rows.Count, 1).End(xlUp).Row

    'Removes error msg when copy/pasting
    Application.CutCopyMode = False

    If data.Cells(lastRow, 4) <> "" Then

        data.Cells(lastRow, 1).Copy table.Cells(sidsteRow, 1)
        data.Cells(lastRow, 2).Copy table.Cells(sidsteRow, 2)
        data.Cells(lastRow, 3).Copy table.Cells(sidsteRow, 3)
        data.Cells(lastRow, 4).Copy table.Cells(sidsteRow, 4)
        data.Cells(lastRow, 6).Copy table.Cells(sidsteRow, 5)

    End If


    Application.ScreenUpdating = True


End Sub

它对我来说很好,但有一个错误:应该是

sidsteRow = table.Cells(Rows.Count, 1).End(xlUp).Row + 1

否则,您只是粘贴在最后一行,而不是将其附加在目标的最后一行之后。

如果您的意图是复制最后一行的顶部,那么它在我的测试中完全按照预期工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM