繁体   English   中英

复制列直到一张纸的最后一行,然后粘贴到另一张纸的下一个空行

[英]Copy columns until last row from one sheet and paste to the next empty row of another sheet

我正在使用下面的VBA代码,该代码从Sheet1复制范围并将其粘贴到同一张工作表中。 但是我需要将数据粘贴到sheet2的下一个可用行中。

Private Sub CommandButton1_Click()

Sheets("Sheet1").Range("A1:A5").Copy

Dim lastrow As Long
lastrow = Range("A65536").End(xlUp).Row

Sheets("Sheet2").Activate
Cells(lastrow + 1, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True

End Sub

请帮帮我..

尝试这个:

    Private Sub CommandButton1_Click()

Dim lastrow As Long
Dim rng1 As Range
Dim rng2 As Range

lastrow = Sheets("Sheet2").Cells(Rows.Count, "A").End(xlUp).Row

Set rng1 = Sheets("Sheet1").Range("A1:A5")
Set rng2 = Sheets("Sheet2").Range("A" & lastrow + 1)

rng1.Copy
rng2.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True

End Sub

您的代码不错,但是您需要更改一行,那就是Sheets("Sheet2").Activate lastrow = Range("A65536").End(xlUp).Row 之前 Sheets("Sheet2").Activate一行lastrow = Range("A65536").End(xlUp).Row

 Private Sub CommandButton1_Click()

    Sheets("Sheet1").Range("A1:A5").Copy
    Sheets("Sheet2").Activate
    Dim lastrow As Long
    lastrow = Range("A65536").End(xlUp).Row

    Cells(lastrow + 1, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True

    End Sub

首先激活sheet2,然后找到最后一行

lastrow = Range("A65536").End(xlUp).Row

暂无
暂无

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

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