我正在尝试设置在Workbook_Open()
方法期间设置的一些默认全局范围。
我已经深入到失败的以下简单示例。
我有一个全局范围变量和Microsoft Excel Objects文件夹中“ ThisWorkbook”模块中的Workbook_Open()
子项(请参见图片以供参考)。看起来如下:
Public testCell As Range
--------------------------------------------------------------------------
Public Sub Workbook_Open()
Set testCell = Range("F1")
End Sub
然后我尝试在工作表模块子菜单中访问此分配的变量:
Public sub mySub()
testCell.Value = "Hello World!"
End Sub
在尝试执行上述操作时,出现“ 424”对象必需错误。方法或语法上是否有任何明显的错误?
供参考,这是我的文件结构:
提前感谢。
您必须将以下行插入代码模块Module1
:
Public testCell As Range
之后,您的代码应该可以工作了。 @SJR提供的链接中对此原因进行了解释。正如他已经提到的,变量的公共声明可以放置在代码模块中,而不是工作簿或工作表对象中。