工作表,#NAME找不到Excel VBAmacros

我想获得一个简单的VBA函数在Excel(.xlsm)工作表中运行。

我创build了这个function:

Function abc() abc = 2 End Function 

在Module2中,它工作。

但是在将电子表格复制到另一个系统之后,现在只是显示“#name”,就好像找不到它一样。 该function显示在可用的function列表中。

这让我觉得有一些需要启用的设置,但是我已经启用了任何提示。 有任何想法吗?

我应该知道这是在信托中心:

http://office.microsoft.com/en-us/excel-help/change-macro-security-settings-in-excel-HP010096919.aspx

基本上,击球,并戳到你find“信任”和“启用macros”,并select最不安全的选项。

然后closures并重新打开电子表格。

我想我们可能需要更多的信息。 你使用的是什么版本的Excel? 它与目标系统版本不同吗?

您需要确保Module2在您复制到其他系统的工作簿中。 Excel 2007默认情况下会在默认情况下将macros存储在个人工作簿中,因此您需要检查代码是否位于.xlsm文件中。

如果仍然卡住,需要快速修复,直接将代码文本复制到新系统的Excel工作簿中,而无需创build.xlsm文件(在其他系统中创build新模块然后粘贴)。

如果您想了解如何组合加载项,您可以在这里或这里开始。