问题:某些变量的声明是否可能在VBA中“隐藏”?
情况:
我有一个包含大量模块的Excel文件,但由于某些原因,每当我们打开它时,此消息显示,我尝试在某些论坛上找到一些“解决方案”但没有成功 - >我决定逐页复制并逐个模块地在一个新的“干净”excel文件中复制。
问题:代码没有运行说没有声明变量XXX(ok ...有意义),但是我检查了损坏的文件,即使它没有在任何地方声明(我在整个项目中查询了Finder)有问题的代码可以运行......令人困惑!
对此有何解释?
答案 0 :(得分:1)
最糟糕的情况,快速和肮脏的情况 - 从每个模块,类,工作簿和工作表中删除Option Explicit
。它确保声明所有变量。例如,尝试运行以下代码:
Option Explicit
Sub TestMe()
k = 5
Debug.Print k
End Sub
你做不到。然后在dim k as long
之后添加Sub TestMe()
。或者删除Option Explicit
。现在你可以运行了。
缓慢而干净的解决方案:检查所有变量,当您尝试运行代码并声明它们时,这些变量会突出显示。您的代码运行得更快。