Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何在VBA中将两个单独的表复制并粘贴到另一个表的末尾?_Excel_Vba - Fatal编程技术网

Excel 如何在VBA中将两个单独的表复制并粘贴到另一个表的末尾?

Excel 如何在VBA中将两个单独的表复制并粘贴到另一个表的末尾?,excel,vba,Excel,Vba,我正在尝试将两个表复制并粘贴到另一个表的底部。这是我的密码: Sub Inv_Copy_Paste() Dim Inv As Worksheet Dim Chart As Worksheet Dim lr2 As Long Set Inv = Worksheets("Inventory Data") Set Chart = Worksheets("Inventory for Charts") lr2 = Chart.Cells(Rows.Coun

我正在尝试将两个表复制并粘贴到另一个表的底部。这是我的密码:

Sub Inv_Copy_Paste()
    Dim Inv As Worksheet
    Dim Chart As Worksheet
    Dim lr2 As Long

    Set Inv = Worksheets("Inventory Data")
    Set Chart = Worksheets("Inventory for Charts")
    lr2 = Chart.Cells(Rows.Count, 1).End(xlUp).Row

    With Inv
        .Range("A2", ("I2" & .Range("A" & Rows.Count).End(xlUp).Row)).Copy Destination:=Chart.Range("A" & lr2 + 1)
        .Range("K2", ("S2" & .Range("K" & Rows.Count).End(xlUp).Row)).Copy Destination:=Chart.Range("A" & lr2 + 1)   
    End With
End Sub
复制其中一个范围时没有问题。
将两个范围的代码放在一起进行复制时,只有第二个范围复制成功。
第二个范围似乎覆盖了第一个范围


任何帮助都将不胜感激。

不必将最后一行存储在变量中,然后在粘贴第二个表之前重新计算最后一行,只需动态计算最后一行并使用
偏移量即可

即,更改

Destination:=Chart.Range("A" & lr2 + 1)


看起来,在粘贴下一个表之前,您必须为最后一行变量重新赋值。我确实尝试了生成“lr3”值,但同样的情况发生了。您在粘贴第一个表之前或之后为lr3赋值了吗?
Destination:=Chart.Cells(Rows.Count, 1).End(xlUp).Offset(1)