Excel自定义数据验证使用自己的函数

Mr.*_*ond 3 excel vba excel-vba excel-formula

我正在尝试在自定义数据验证公式中使用自己的函数。但是由于某种原因,它不起作用。

我的功能:

Public Function IsNumberXValid(x) As Boolean
   IsNumberXValid = IsNumeric(x) And Math.Cos(x) <> 1
End Function
Run Code Online (Sandbox Code Playgroud)

当我将此函数放在公式字段中时,会显示以下警告:

在此处输入图片说明

我究竟做错了什么?

Gar*_*ent 5

使用正常的工作表功能,可以轻松应用DV

在此处输入图片说明

使用UDF()稍微复杂一些。 此方法使用“帮助程序”单元格。

我从一个小的UDF()开始

Public Function IsPrime(L As Long) As Boolean
    arr = Array(5, 7, 11)
    IsPrime = False
    For Each a In arr
        If L = a Then
            IsPrime = True
            Exit Function
        End If
    Next a
End Function
Run Code Online (Sandbox Code Playgroud)

UDF()返回True一对夫妇的投入。我想使用udf()DV应用于单元格D1

我正在使用单元格E1作为我的“助手”。在单元格E1中,我放入了UDF()

=IsPrime(D1)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

接下来,我是Name我的“助手”单元格:

在此处输入图片说明


最后,我回到单元格D1并应用DV

在此处输入图片说明