小编Mar*_*not的帖子

用户定义的函数在工作表中返回#REF,在VBA中工作

我正在尝试编写一个简单的UDF,告诉我货币代码是否为G10.当我在VBA中的子测试中它工作正常但是当我尝试在电子表格中使用它时我得到#REF.

Function IsG10(Cur As Range) As Boolean

  Dim G10s As Variant
  Dim Rslt As Boolean
  Dim Cross As Variant

 Cross = Cur.Value
 Rslt = False

 G10s = Array("USD", "GBP", "EUR", "CHF", "NOK", "SEK", "AUD", "NZD", "CAD", "JPY")

If Not (Application.WorksheetFunction.IsText(Cross)) Or Len(Cross) > 3 Then
    IsG10 = CVErr(xlErrNA)
Else
    For Each i In G10s
        If Cross = i Then Rslt = True
    Next i
End If

IsG10 = Rslt

End Function
Run Code Online (Sandbox Code Playgroud)

这是Sub我用来测试的:

Sub Test()

 Dim TC As Range
 Dim ans …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

4
推荐指数
1
解决办法
1324
查看次数

标签 统计

excel ×1

excel-vba ×1

vba ×1