我正在使用一些应该将工作簿设置为变量的代码,然后在以后调用它。我相信我需要这样做,因为通过我在3-4个不同的工作簿之间跳跃的代码。
然而,当我使用这行代码wkbDestinationBook.Sheets(c10).Select
时,我得到了一个
选择工作表类的方法失败
要定义我的wkbDestinationBook
,我使用了
Set wkbDestinationBook = ActiveWorkbook
中的 Sub
,定义为Global wkbDestinationBook As Excel.Workbook
Worksheet(c10)
没有问题,因为我在工作簿处于活动状态且未发现问题时已使用该行
我对如何/如何解决此错误感到茫然。谢谢
答案 0 :(得分:2)
不应在Sub中声明公共变量。如果在Sub中声明变量,则此变量仅对此过程有效。 您需要声明如下示例:
Option Explicit
Public wkbDestinationBook As Excel.Workbook
Sub YourSub ()
'Your code
'You can set the value of the Public Variable wkbDestinationBook
End Sub
答案 1 :(得分:0)
相当简单的解决方案。
我将行wkbDestinationBook.Sheets(c10).select
更改为wkbDestinationBook.Sheets(c10).activate
现在可以正常运行