复制、粘贴然后移动下一行



我正试图从工作表中复制数据"MAINSHEET";单元M9至O9并将其粘贴到片材"上";COPYDATA";,列B。首先它将数据粘贴到B2,然后它将粘贴到B3,然后粘贴到B4,然后继续。。。但它不会往下走,继续粘贴在B2细胞上。

Sub Copy()
Dim lastrow As Integer
lastrow = ThisWorkbook.Sheets("COPYDATA").Cells(Rows.Count, 1).End(xlUp).Row

Sheets("MAINSHEET").Range("M9:O9").Copy
Worksheets("COPYDATA").Range("B" & lastrow + 1).PasteSpecial xlPasteValues
End Sub

您正在计算第1列中的行数,但在第2列中进行粘贴,因此最后一行始终保持不变。

请计算B列中的行数。

lastrow = ThisWorkbook.Sheets("COPYDATA").Cells(Rows.Count, 2).End(xlUp).Row

试试这个:

Sub Copy()
Dim lastrow As Long
lastrow = ThisWorkbook.Sheets("COPYDATA").Cells(ThisWprkbook.Sheets("COPYDATA").Rows.Count, "B").End(xlUp).Row

Sheets("MAINSHEET").Range("M9:O9").Copy
Worksheets("COPYDATA").Range("B" & lastrow + 1).PasteSpecial xlPasteValues
End Sub

您需要修改代码以获得COPYDATA表的行数,并使用列";B";。

最新更新