EXCEL VBA用户定义的函数-为什么在定义它的工作簿中使用它时,出现错误“函数未定义”?

时间:2019-03-07 14:52:13

标签: excel vba excel-formula

在同一本工作簿中,我定义了函数:

Public Function toto(val As Integer) As Integer
    toto = val * 2
End Function

这是编辑器视图:

enter image description here

在工作表的一个单元格中,我使用公式:

enter image description here

但是结果是(翻译: #NAME?):

enter image description here

此外,在从Excel打开的VBA exec窗口本身中,尝试执行时出现以下错误:

toto(2)

enter image description here

翻译:编译错误:子或函数未定义

我想念什么?

2 个答案:

答案 0 :(得分:3)

扩展@ Jo.lass和@ vincent-g的内容,您需要将代码放在模块中,而不是工作表或工作簿代码中。看到这里:

enter image description here

答案 1 :(得分:2)

与其在VBE中的工作表中编写功能,不如在新模块中编写功能。 至少对我有用。