宏在不同的计算机上没有响应

Macro not responding on different computer

我有一个宏,当我点击它的按钮时,它在我的电脑上工作正常,但它在不同的电脑上不起作用。 单击该按钮时,该 excel 文件中的所有宏都不起作用。

但是,我有一个在保存前运行的宏。这意味着当我尝试保存时,另一个宏可以正常工作。 (该宏会弹出一条输入消息,但现在不相关)。所以看起来只有当你点击调用它们时宏才起作用...

Excel的版本是一样的,问的时候我启用了宏

这不是代码的问题,因为即使我从不同的 PC 上在该文件上创建了一个新的简单宏(例如:

msgbox("hello")

) 还是没反应

我过去曾遇到 excel 文件的问题,我不得不手动删除计算机中的所有 *.exd 扩展名。但是,一旦我删除了这些扩展名,该文件就可以正常工作了。

我认为 excel 文件被其他计算机认为已损坏,因此他们没有启用宏。这只是我的印象,但我不明白为什么宏在保存时有效而在单击时无效。

你有解决问题的办法吗?

这个建议可能太简单了,但是你检查过Excel中的安全设置了吗?其他计算机可能设置为更高的安全设置,在不通知用户的情况下禁用所有宏。

https://support.office.com/en-US/Article/Enable-or-disable-macros-in-Office-documents-7b4fdd2e-174f-47e2-9611-9efe4f860b12?ui=en-US

我自己在使用宏和 Excel 工作簿时遇到了类似的问题,做了一些非常有趣的事情(比如公式计算不正确,或者函数没有按预期工作等),我没有找到任何其他解决方案然后复制文件的内容并粘贴到新创建的文件中。 在每种情况下,这都解决了我的问题。 它表明我的文件不知何故被损坏,唯一的解决办法是保存内容并删除文件。 从 VBEditor(模块和表单)导出 .frm 和 .frx 文件对我来说效果很好。 你自己试过吗?