Excel找不到VBA函数

Excel找不到VBA函数,excel,vba,Excel,Vba,我试图创建一个VBA函数来调用Excel中的单元格,但当我输入=MyFunction(“a”) 在我的VBA模块中模块1: Public Function MyFunction(anything As String) MyFunction = anything End Function 在单元格中: =MyFunction("a") 结果: #NAME? 我做错了什么?当我开始在单元格中键入=MyFunction时,Excel将其作为选项列出,但不显示参数,然后生成此结果 这是在2

我试图创建一个VBA函数来调用Excel中的单元格,但当我输入
=MyFunction(“a”)

在我的VBA模块中
模块1

Public Function MyFunction(anything As String)
    MyFunction = anything
End Function
在单元格中:

=MyFunction("a")
结果:

#NAME?
我做错了什么?当我开始在单元格中键入
=MyFunction
时,Excel将其作为选项列出,但不显示参数,然后生成此结果


这是在2007
.xlsm
文件中。

您的自定义项位于正确的位置,编码正确,如果为相关工作簿启用了宏,将被“识别”

检查您的安全设置。

我有一个启用宏的文件,我将宏安全设置为启用所有,我选中了对VBA项目对象模型的信任访问,我的工作簿位于受信任的位置,我仍然无法键入我的函数名或在“插入函数”对话框中找到它。还有哪些其他安全设置

这是最近在Windows 10 Pro上未经修改的2016 x64安装

在此工作簿(代码)中,我有:

第2页(代码)中有:


这两个函数都不是Sheet2的可用函数。

FWIW,它在2013.xlsx文件中对我来说运行良好。也许试着把这个函数放到一个干净的电子表格中,看看它是否能为你工作。好吧,我制作了一个新文件,它工作了,所以我的文档一定有点奇怪。我会将数据复制到那里,然后再试一次。您可能犯了一个错误,但将函数留在了单元格中,因为它不是易失性的,可能不会通过修复函数来“更新”它?对于您的参数(工具提示),您可以看看这里的建议:我认为当我将文件保存为
.xlsm
时,它不会自动启用文件上的宏。我重新打开了该文件,它提示我启用宏。我最初将该文件创建为
.xlsx
,并保存为
.xlsm
,以便在其上启用宏。现在我已经重新打开了文件,它要求我启用宏。谢谢我自己也犯过一百万次同样的错误!
Public Function TestJohn(derp As String) As String
    TestJohn = "test john " & derp
End Function
Public Function TestJohn2(derp As String) As String
    TestJohn2 = "test john2 " & derp
End Function