【发布时间】:2015-06-02 17:11:47
【问题描述】:
我正在处理一个包含许多 ActiveX 控件的大型 Excel 文件。该文件的所有功能都可以在我的 PC 和另一台 PC 上完美运行,但是当 Auto_Open 宏尝试激活其他 PC 上的工作表时,我收到错误 32809。
我知道这个问题已经在许多不同的论坛上发布过很多次,但是我发现对其他人有用的解决方案都没有对我有用。我已经尝试了以下所有可能的解决方案:
- 从 Temp\Excel8.0 和 Temp\VBA 中删除所有 *.exd 文件
- 禁用所有 ActiveX 控件
- 在 PC 上打开文件不起作用并使用其他名称保存
- 稍微修改代码,重新编译保存
- 删除所有 ActiveX 控件并在无法正常工作的 PC 上重新创建它们
阻止 32809 错误发生的唯一方法是删除所有 ActiveX 控件,但如果我将现在正在运行的文件保存在我的 PC 上并尝试在不工作的那个上打开它,错误又回来了。
虽然删除所有控件确实停止了错误,但当我对文件进行更新时,必须在另一台 PC 上重新创建所有控件非常不方便。我愿意接受任何可能有助于解决这个极其令人沮丧的问题的建议。
【问题讨论】:
-
您是否安装了所有 Office 更新。这有时会奏效。我有一个程序一直崩溃,直到我意识到它只是在没有安装 Office 更新的计算机上崩溃,所以......另一个选择是保存为 XLSX 文件,所以所有宏都被剥离,然后复制模块从旧文件到新的 XLSX 文件并保存为 XLSM
-
创建自定义用户表单来替代 ActiveX...
-
Abe- 我没有安装更新,因为这些是公司 PC,我必须通过我们的 IT 部门才能在所有 50 多台受影响的计算机上安装更新。 XLSX 方法是否必须在每台计算机上单独执行?
-
Marciej- 我简要地考虑了该方法,但这会给工具带来相当大的不便,我宁愿不处理这些投诉。
标签: vba excel excel-2010