我正在使用一些代码,这些代码应该将工作簿设置为变量,然后在以后的某个日期调用它。我相信我需要这样做,因为我在3-4个不同的工作簿之间跳过代码。
然而,当我使用这行代码wkbDestinationBook.Sheets(c10).Select时,我会得到一个
工作表类失败的选择方法
为了定义我的wkbDestinationBook,我使用了行
Set wkbDestinationBook = ActiveWorkbook在以前的Sub中被定义为Global wkbDestinationBook As Excel.Workbook
Worksheet(c10)是没有问题的,因为我在工作簿处于活动状态时使用了该行,并且没有发现问题
我不知道该如何解决这个错误。谢谢
发布于 2018-01-17 08:40:31
这一问题的解决方案相当简单。
我将行wkbDestinationBook.Sheets(c10).select改为wkbDestinationBook.Sheets(c10).activate,现在没有任何问题。
发布于 2018-01-16 16:53:38
不应在Sub中声明公共变量。如果在Sub中声明变量,则此变量仅对此过程有效。您需要声明如下示例:
Option Explicit
Public wkbDestinationBook As Excel.Workbook
Sub YourSub ()
'Your code
'You can set the value of the Public Variable wkbDestinationBook
End Subhttp://www.excel-easy.com/vba/examples/variable-scope.html
https://stackoverflow.com/questions/48285991
复制相似问题