当我尝试使用在Excel电子表格中定义的VBA函数时,我得到“这不是一个有效的函数”
我在VBA中定义了一个函数,如下所示
Public Function Distance(X, Y) as Double
然后在一个单元格中,我尝试使用这个函数。 我input“@Dis”并得到下拉菜单,select函数,然后在单元格中input以@Distance(A1,A2)结尾的参数。
当我按Enter时,出现错误“该function无效”。
我在整个系统中启用了macros,试图将其保存为旧的格式,并将其作为macros启用的工作簿格式无济于事。
我使用这个函数有什么问题?
尝试使用:
=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
如预期。
您还需要确保函数的VBA代码位于模块中 ,而不在工作表的代码区域中。
不要使用保留字作为你的函数的名字。 我尝试了一个名称Parse(),它将它踢回去,直到我将其重命名为ParseString()。