首页 > 解决方案 > 将分离的列从活动工作表复制到另一个工作表的第一个空行并合并两列(在目标工作表中)

问题描述

我正在努力寻找一种方法来复制两个不同的连续范围(列彼此相邻,例如:A;B;C 和第二个 G;H;I);并将其粘贴到另一张纸的第一个空行中,但这次我希望它们合并成一个连续体。(曾经是“A;B;C”,“G;H;I”现在我想要它全部放在新工作表的第一行但现在“A;B;C;D;F;G” - 注意D;F;G 是 G;H;I)

我想出的代码是这个,但它只是将第二个范围粘贴在第一个范围之下

Sub copy ()

lastrowa = Sheets("DATA").Range("A" & Rows.Count).End(xlUp).Offset(1).Row
ActiveSheet.Range("A5:T1346").Copy Sheets("DATA").Rows(lastrowa) & 
_ActiveSheet.Range("AC5:AH1346").Copy Sheets("DATA").Rows(lastrowa)

End Sub 

我也尝试过连接,但它只是冻结了这个过程(永远不明白它是否正确)

请注意,range A5:T1346我希望它后面跟着AC5:AH1346; 在工作表“DATA”的第一个空行中合并成一个连续体(意味着 AC 列应该成为 U 列)</p>

任何建议提前Thks

标签: vbaexcel

解决方案


尝试,

Sub copy ()
    dim lastrowa as long

    lastrowa = workSheets("DATA").Range("A" & Rows.Count).End(xlUp).Offset(1).Row
    with ActiveSheet
         .Range("A5:T1346").Copy workSheets("DATA").cells(lastrowa, "A") 
         .Range("AC5:AH1346").Copy workSheets("DATA").cells(lastrowa, "U") 
    end with
End Sub

推荐阅读