1

这段代码工作了两三次,然后我得到一个“Range 类的PasteSpecial 方法失败”错误。我知道当没有复制任何内容时会出现该错误,但考虑到它是在上面复制的,我不明白为什么它不起作用。

当我一步一步调试和观察它时,它会在 Paste 行之后循环回到开头,而不是跑到 Sub 的末尾。

Sub AddRows()
   Range("A11").End(xlDown).EntireRow.Copy
   Range("A11").End(xlDown).Offset(1, 0).PasteSpecial xlPasteAll
   Application.CutCopyMode = False
End Sub

有任何想法吗?谢谢大家!

4

1 回答 1

0

试试下面的代码:复制和粘贴操作可以合并在 1 行中。下面的代码复制从单元格A11到包含数据的最后一个单元格的范围,并将数据粘贴到下面的下一个单元格中。

 Sub AddRows()


    Dim lastRow As Long
    lastRow = Range("A" & Rows.Count).End(xlUp).Row

    Dim rng As Range
    Set rng = Range("A11:A" & lastRow)

    ' Next row
    rng.Copy Cells(lastRow + 1, 1)

    'if you want data to be pasted to Column B use below
    'rng.Copy rng.Offset(0, 1)
End Sub
于 2013-05-10T19:14:09.200 回答