所有工作表和所有模块在顶部都有显式选项。
需要变量声明被勾选。
我只有两部分代码,每个部分都在自己的模块中。但是选项显式却被忽略了。
作为一个测试,我添加了一行新代码
sausage = 3
而且它没有错误地编译。
我已经用下面的代码检查了工作簿中所有可能的代码部分。除了一个之外,它在所有这些文件中都无法编译。该模块中的整个代码是:
Option Explicit
Sub SelectPath_Click()
s = 3
End Sub
使用Debug ->编译VBA项目不会产生任何错误,然后再执行的选项就会变灰。
当单击按钮时,您可以猜到调用的代码。我认为按钮是一个表单控件,而不是active-x,但我不知道如何查询该按钮,以找出它的类型。
没有活动的加载项。
同时,我已经把潜艇从一个模块移到按钮所在的工作表上,嘿,预告片。编译失败。
因此,现在的问题是,工作簿的这一部分如何显式地忽略选项?我做错了什么吗?
发布于 2019-05-20 06:43:29
尝尝这个。这听起来很愚蠢,但实际上它已经多次为我修复了这种状况,从Excel 2003到2016年(甚至今天早上)都是如此。如果它失败了,你只花了30秒的时间尝试这个公认的奇怪的解决方法。
在"t“后面显式地定位光标。
输入一个空格(这有一个奇怪的技术原因,相信我就行了)
击入
按左箭头键
点击删除键
现在编译器应该做您期望的事情。
这是在您正确完成所有操作的情况下,并且您知道该选项显式根本无法正常工作,这就是为未声明的变量提供一个编译错误。
发布于 2018-12-18 09:36:08
我找到了一个解决方案,将代码从模块移到调用它的按钮所在的工作表上。
所有其他代码区域都无法正确地使用duff代码进行编译(即使是在其中包含函数的其他模块)。
我不得不将代码重新分配到按钮上,但现在所有的代码都正常工作了。
但我不知道它为什么会失败。
谢谢你找我。
https://stackoverflow.com/questions/53831398
复制