[使用Windows Server 2012时VBA崩溃而没有神奇的停止]

问题描述 投票:0回答:1

我有一个带有VBA的XLSM文件,该文件是在Windows 7 Pro上的Excel 2010中制作的,在那可以正常工作,但是在Windows Server 2012中运行相同的文件,这会使Excel 2010崩溃并出现一般错误消息

“ Microsoft Excel已停止工作”。

但是很奇怪...

到目前为止我尝试过的事情:

  • 经过验证的Excel的参考在计算机之间相同,并且没有标记为丢失。

  • 已验证无数据库调用-有多个工作簿(一个XLSM,几个XLSX)和大量代码,但是每个项目都是静态的且独立的。

  • 使用程序化停止数百万次。我会解释。

我使用Stop来查找代码执行的位置,直到它反复崩溃为止,注释掉那些有效的和无效的停止位置,添加新的停止位置,保存,直到我缩小了使它崩溃了。

它在中断模式下在那条线崩溃,然后没有崩溃,然后在运行模式下没有在那条线崩溃。不可思议的是,这些变化发生了,根本没有改变那条线。我唯一改变的是在“停止”之前和之后添加“停止”,然后注释掉“停止”。

好吧,很明显,我必须不小心添加或删除了Stop以外的代码,这些代码导致违规行开始正常执行。代码继续执行并在以后崩溃,所以我再次尽力地将其范围缩小到一行,然后再次神奇地开始正确执行该行并一直运行到最后。现在没有崩溃,仅是因为添加和注释了Stop。随后的运行也可以。原始备份仍使Excel崩溃。

尽管很神秘,但可以解决问题,除了...

[Windows Server上有很多类似的XLSM文件及其静态项目文件夹,每个文件夹都不尽相同,即使对鬼魂的驱逐方式没有任何意义,我也无法为每个人做到这一点。

所以我想知道,我可以使用VBA做些什么,以使其不会遇到问题?

到目前为止我尝试过的是:

  • 已添加并注释掉,请停在几个任意位置(不要花一个小时来缩小确切的代码行)。

  • 添加了新的空类模块。

  • 已编译。

都没有阻止它崩溃。好像我专注于违规行为的两个眼球是唯一的解决方案,但这毫无意义。

设计于...

Windows 7专业版Service Pack 164位Microsoft Office专业增强版2010Excel版本:14.0.7192.5000(32位)

问题...

Windows Server 2012 StandardMicrosoft Office标准版2010Excel版本14.0.7128.5000(32位)

excel-vba windows-7 excel-2010 windows-server-2012 vba
1个回答
0
投票

我现在在同一台服务器上遇到了很多次,重要的是,我在另一台服务器上遇到了几次这种情况,因此,这似乎完全符合运行MS的服务器这一已知概念Excel是“气质的”。

© www.soinside.com 2019 - 2024. All rights reserved.