复制一行并将其粘贴在另一张纸的底部



我想从纸上复制第2行,然后将其粘贴到另一个纸(Sheet2)中的最后一个空行。到目前为止,这就是我想到的:

Sub testj()
Rows(2).Copy
Worksheets("Sheet2").Range("A1").End(xlDown).Offset(1, 0).EntireRow.Insert
End Sub

这给出了错误:下标超出范围。我似乎找不到它出了什么问题。

重命名的工作表?!

运行代码并且没有名称为" Sheet2"的工作表(在 TAB> TAB 中):

运行时错误:'9'下标超出范围

当您没有从A2到底部的数据时,名称为" Sheet2":

运行时错误'1004':应用程序定义或对象定义的错误

得出结论:您可能会意外重命名为" Sheet2"。为了避免这种情况

Rows(2).Copy
Sheet2.Range("A1").End(xlDown).Offset(1, 0).EntireRow.Insert

现在您可以根据需要在选项卡中重命名表。

列中的最后一个使用的单元格

如果您是100%确定至少有前两个行中有数据,并且您的数据是连续的(没有空单元格),则代码可以正常工作。如果列中的数据不连续,则停止的第一个空单元将不是最后一个。因此,您将覆盖现有数据。

因此,列中的最后一个单元格主要是从底部计算的:

Rows(2).Copy
Sheet2.cells(Rows.count,"A").End(xlUp).Offset(1, 0).EntireRow.Insert

这有一个限制,它永远不会复制到第1行,但是由于您通常在那里的标题很好。

一种不限限制的方式正在使用查找方法。

最新更新