我在VBA中定义了一个函数,如下所示
Public Function Distance(X, Y) as Double
然后在一个单元格中我尝试使用该功能。我输入“@Dis”并进入下拉菜单,选择该功能,然后在单元格中输入以@Distance(A1,A2)结尾的参数。
当我按Enter键时,我收到错误“该功能无效”。
我在整个系统中启用了宏,尝试将其保存为旧格式和启用宏的工作簿格式无效。
我对此功能的使用有什么问题?
答案 0 :(得分:6)
尝试使用:
=Distance(A1, A2)
而不是
@Distance(A1, A2)
我从来没有见过@
作为在Excel中调用函数的正确字符。
我在Excel中尝试了以下操作,它就像一个魅力:
在Module1中:
Public Function Distance(X as Double, Y as Double) as Double
Distance = 10
End Function
在一个单元格中:
=Distance(A1, A2)
产生结果:
10
正如所料。
答案 1 :(得分:6)
您还需要确保您的功能的VBA代码位于模块中,而不是在工作表的代码区域中。
答案 2 :(得分:3)
请勿使用保留字作为功能名称。我尝试了一个名称Parse()并将其踢回去,直到我将其重命名为ParseString()。