粘贴特殊运行时错误1004方法范围失败

时间:2018-03-16 14:50:26

标签: excel vba

我正在使用以下VBA代码并将其分配给按钮:

Sub pastespecial ()

ActiveSheet.Range("A4:X400").Copy
Activesheet.Next.Range("A4:X400").PasteSpecial Paste:=xlPasteFormats
ActiveSheet.Next.Range("A4:X400").PasteSpecial paste:=xlPasteFormulas

ActiveSheet.Previous.Activate

Application.CutCopyMode = False

MsgBox "Data has been copied Successfully"

End sub

之前它正在这样做,但现在开始提出问题。 我正在

  

运行时错误1004粘贴Range类失败的特殊方法

提前致谢

2 个答案:

答案 0 :(得分:0)

如果活动工作表是第一个工作表,则子工作将失败:

 ActiveSheet.Previous.Activate

因为没有先前的表格。如果活动工作表是最后工作表,则子工作将失败:

 Activesheet.Next.Range("A4:X400").PasteSpecial Paste:=xlPasteFormats

因为没有下一张纸。如果活动工作表之前和之后都有工作表,则代码适用于我。

(确保没有其他因素导致合并单元格或保护等错误。)

答案 1 :(得分:0)

这个解决方案对我有用..

Sub pastespecial ()

ActiveSheet.Range("A4:X400").Copy
Activesheet.Next.Range("A4:X400").PasteSpecial Paste:=xlPasteFormats
ActiveSheet.Range("A4:X400").Copy
ActiveSheet.Next.Range("A4:X400").PasteSpecial paste:=xlPasteFormulas

ActiveSheet.Previous.Activate

Application.CutCopyMode = False

MsgBox "Data has been copied Successfully"

End sub