2013-05-10 128 views
1

此代码工作两三次,然后得到“PasteSpecial方法的范围类失败”错误。我知道当没有任何内容被复制时我会得到这个错误,但考虑到它是在上面复制的,我不明白为什么它不起作用。复制粘贴问题

当我逐步调试并观察它时,它会在粘贴行之后循环回到开头,而不是遍历Sub的末尾。

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

任何想法? 谢谢大家提前!

+0

请通过标记正确答案来“关闭”问题。这是人们在帮助别人时喜欢的东西。这将有助于同样的问题,以确定正确的解决方案 – Santosh 2013-05-28 01:10:21

回答

0

请尝试以下代码:复制和粘贴操作可以组合在一行中。 下面的代码复制从单元格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