使用Excel 2007/2010的用户正在使用我在2013年设计的Worksheet_Change和Worksheet_SelectionChange事件时,就会发生这种情况。

似乎正在发生的事情是,当他们第一次打开工作簿时,不会触发他们的工作表事件。我已确保将它们的选项默认设置为启用宏。如果我打开立即窗口并运行Application.EnableEvents = True,那么它们的事件就会开始触发。使用Excel 2013的用户似乎没有此问题,即使从共享的网络驱动器中打开工作簿的完全相同的副本时也是如此。

我似乎能够通过将Application.EnableEvents = True放在Workbook_Open事件下来解决此问题,但我想知道这是否是可行的长期解决方案。我真的很想弄清楚为什么首先要解决这个问题以直接解决它。

最佳答案

我今天在某些Word VBA上遇到了类似的问题。它位于一个隐藏的项目中。原来,我们在错误事件处理程序上被其他人错误地编码了。我使用了AutoExec和AutoOpen宏,并插入一个Stop进入 Debug模式,看看会发生什么。

除非您首先在代码中将EnableEvents设置为False,否则应该触发这些事件。

关于vba - Application.EnableEvents默认为False,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37141466/

10-11 11:50