复制整个excel行并粘贴到表的底部

复制整个excel行并粘贴到表的底部,excel,vba,Excel,Vba,我正在编写一个Excel宏,它逐行遍历Excel表,并在满足条件时复制整行并粘贴到最后一行下。在行中循环并满足条件都是可行的,但我一直在复制某一行并将其粘贴到表的末尾 Sub Makro1() Application.Goto Reference:="Makro1" Dim i As Integer With ActiveSheet 'for looping totalRows = .Cells(.Rows.Count, "A").En

我正在编写一个Excel宏,它逐行遍历Excel表,并在满足条件时复制整行并粘贴到最后一行下。在行中循环并满足条件都是可行的,但我一直在复制某一行并将其粘贴到表的末尾

Sub Makro1()
    Application.Goto Reference:="Makro1"

    Dim i As Integer

    With ActiveSheet
        'for looping
        totalRows = .Cells(.Rows.Count, "A").End(xlUp).Row

        'index of last row even after rows have been added
        lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row    

        'data starts at row #3
        For i = 3 To totalRows
            If Cells(i, 19).Value > 0 Then
                number = Cells(i, 19).Value
                Do While number > 0
                    lastRow = lasRow + 1        
                    Rows(lastRow) = Rows(i).Value                
                    number = number - 1
                Loop
            End If
        Next i
    End With
End Sub
我得到运行时错误1004。 我知道嵌套循环很糟糕,我只是需要它来工作(非编码)以使我的生活更轻松

错误:

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

。。。在代码的第一行发生:

Application.Goto Reference:="Makro1"
该语句需要一个名为“Makro1”的命名范围,但找不到它。如果它能找到它,范围就会滚动到视图中。如果这对您不重要,那么只需将该行注释掉:

' Application.Goto Reference:="Makro1"
否则,请从功能区上的“公式”选项卡打开“名称管理器”,并检查工作簿的命名范围。如果您知道应该以这种方式调用哪个范围,则可能会重新创建“Makro1”。

错误:

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

。。。在代码的第一行发生:

Application.Goto Reference:="Makro1"
该语句需要一个名为“Makro1”的命名范围,但找不到它。如果它能找到它,范围就会滚动到视图中。如果这对您不重要,那么只需将该行注释掉:

' Application.Goto Reference:="Makro1"

否则,请从功能区上的“公式”选项卡打开“名称管理器”,并检查工作簿的命名范围。如果您知道应该以这种方式调用哪个范围,则可能会重新创建“Makro1”。

您正在将
用于
,但随后停止使用锚定。在
For
循环中,在所有
单元格()
行()
之前添加
。此外,错误会出现哪一行?我已删除了“Application.Goto Reference:=”Makro1“,它修复了错误。这个问题已经用我的最新代码更新了。现在什么都没有发生,没有错误,也没有粘贴。知道为什么吗?那是另一个问题。请继续回答原来的问题,如果答案解决了这个问题,最好将其标记为已接受。谢谢;-)您正在将
一起使用,但随后停止使用锚定。在
For
循环中,在所有
单元格()
行()
之前添加
。此外,错误会出现哪一行?我已删除了“Application.Goto Reference:=”Makro1“,它修复了错误。这个问题已经用我的最新代码更新了。现在什么都没有发生,没有错误,也没有粘贴。知道为什么吗?那是另一个问题。请继续回答原来的问题,如果答案解决了这个问题,最好将其标记为已接受。谢谢;-)谢谢,错误信息已经消失了。不幸的是,没有发生任何事情(没有粘贴任何行)。你知道为什么没有吗?我已经用我现在的代码更新了帖子。请用原始问题还原你的问题,因为现在我的答案不再有意义了。请不要这样改变你的问题;你总是可以问一个新问题。很抱歉,我没想到。已还原问题。很好,我看到您也发布了新问题,并且已经得到了答案:)谢谢,错误消息已消失。不幸的是,没有发生任何事情(没有粘贴任何行)。你知道为什么没有吗?我已经用我现在的代码更新了帖子。请用原始问题还原你的问题,因为现在我的答案不再有意义了。请不要这样改变你的问题;你总是可以问一个新问题。很抱歉,我没想到。恢复了问题。很好,我看到您也发布了新问题,并且已经得到了答案:)