VBA中的第二个CopyPicture失败,出现"自动化错误"

时间:2017-12-05 19:35:50

标签: excel vba excel-vba

所以我正在将一堆数据复制并粘贴到另一个电子表格中。我认为这最后一点很简单,因为我已经在这个剧本中做了很多次。

除非失败。这是我的代码的一部分:

ProdCK.Worksheets("CK week").Range("A11:AY28").CopyPicture Appearance:=xlScreen
Worksheets("Prod.CK").Paste Destination:=Worksheets("Prod.CK").Range("A1")

ProdCK.Worksheets("CK week").Range("I131:BO148").CopyPicture Appearance:=xlScreen
Worksheets("Prod.CK").Paste Destination:=Worksheets("Prod.CK").Range("A22")

第一个工作正常,但第二个工作在CopyPicture操作崩溃。我通过先在一个范围内存储范围,检查数据是否存在于" watch"中来检查范围是否实际存在。屏幕,然后调用CopyPicture,但仍然提供了

  

424错误需要对象

任何人都可以为我发光吗?

更新:

错误实际上是

  

-2147417851自动化错误服务器引发了异常

我的错误处理代码有一个错误,它将自动化错误转换为Object required错误。有趣的是,当我在这个Sub中使用可见的Excel.Application时,不会发生错误。我的可见和不可见设置之间的唯一区别是Visible = TrueScreenUpdating = True

1 个答案:

答案 0 :(得分:0)

我还没有弄明白为什么,但目前我只是在这两个陈述之前设置App.Visible = True,然后将其重新设置为App.Visible = False。这可以解决问题。

我真的不喜欢它。