Excel VBA如何在争论中防止/捕获数据类型不匹配错误

时间:2016-02-02 21:29:55

标签: excel vba excel-vba type-mismatch

我有一个Excel VBA用户定义函数,我已经为其中一个函数的参数声明了一个数据类型。我希望能够捕获潜在的错误以防万一 有人没有输入正确的数据类型。似乎应该很简单,但无法弄明白。

请参阅下面的示例,其中我使用了子程序来证明问题。

Sub MyTest()
    MsgBox myfunction("123a")
End Sub

Function myfunction(mynum As Double) As String
    On Error Resume Next

    If IsNumeric(mynum) Then
        myfunction = "ok"
    Else
        myfunction = "not ok"
    End If
End Function

额外注意:虽然我使用子程序来演示问题,但实际上我使用用户定义的函数并从我的工作表中调用该函数。因此,仅仅在" MyTest"中添加保护并不简单。调用" MyFunction"之前的程序过程

0 个答案:

没有答案