隐藏变量声明 VBA
Hidden variable declaration VBA
问题:有没有可能在VBA中有些变量的声明是"hidden"?
情况:
我有一个包含很多模块的 Excel 文件,但由于某些原因,每当我们打开它时都会显示此消息 我尝试了一些 "solutions" 在某些论坛上找到的没有成功 -> 我决定通过 sheet 复制 sheet 并在一个新的 "clean" excel 文件中逐个模块地复制整个内容。
问题: 代码没有 运行 说明未声明变量 XXX(好吧...有道理),但我检查了损坏的文件即使它没有在任何地方声明(我在整个项目中使用 Finder 检查),有问题的代码可以 运行...令人困惑!
有什么解释吗?
最坏情况,快速而肮脏的情况 - 从每个模块、class、工作簿和工作表中删除 Option Explicit
。它确保声明了所有变量。例如,尝试 运行 宁以下代码:
Option Explicit
Sub TestMe()
k = 5
Debug.Print k
End Sub
你不能。然后在Sub TestMe()
之后加上dim k as long
。或者删除 Option Explicit
。现在你可以 运行 它了。
缓慢而干净的解决方案: 检查所有变量,当您尝试 运行 代码并声明它们时,这些变量会突出显示。您的代码会 运行 更快。
问题:有没有可能在VBA中有些变量的声明是"hidden"?
情况:
我有一个包含很多模块的 Excel 文件,但由于某些原因,每当我们打开它时都会显示此消息
问题: 代码没有 运行 说明未声明变量 XXX(好吧...有道理),但我检查了损坏的文件即使它没有在任何地方声明(我在整个项目中使用 Finder 检查),有问题的代码可以 运行...令人困惑!
有什么解释吗?
最坏情况,快速而肮脏的情况 - 从每个模块、class、工作簿和工作表中删除 Option Explicit
。它确保声明了所有变量。例如,尝试 运行 宁以下代码:
Option Explicit
Sub TestMe()
k = 5
Debug.Print k
End Sub
你不能。然后在Sub TestMe()
之后加上dim k as long
。或者删除 Option Explicit
。现在你可以 运行 它了。
缓慢而干净的解决方案: 检查所有变量,当您尝试 运行 代码并声明它们时,这些变量会突出显示。您的代码会 运行 更快。