语 法:
CVErr (errornumber)
必需的 errornumber 参数 是任何有效的错误号。
备 注:
使用 CVErr 函数可在用户创建的 过程中创建用户定义的错误。 例如,如果您创建一个可接受多个参数并正常返回一个字符串的函数,则可以让函数计算输入参数以确保它们在可接受的范围内。 如果它们不在可接受的范围内,则您的函数很可能不会返回预期结果。 在此情况下,CVErr 允许您返回一个可告知您应采取何种操作的错误号。
请注意,不允许对 Error 进行隐式转换。 例如,不能直接将 CVErr 的返回值分配给不是 Variant 的 变量。 但是,您可以使用 CInt (CDbl 等对 CVErr 返回的值执行显式转换) ,并将它分配给相应的 数据类型 。
示 例:
此示例使用 CVErr 函数返回其 VarType 是 vbError (10) 的 Variant 。 如果传递给用户定义函数 CalculateDouble 的参数不是数字,则该函数将返回一个错误。 您可以使用 CVErr 返回来自用户定义过程的用户定义错误或推迟处理运行时错误。 使用 IsError 函数测试值是否表示错误。
Private Sub Command8_Click()
Debug.Print CalculateDouble("345.45robert") 'Error 2001
End Sub
Function CalculateDouble(Number)
If IsNumeric(Number) Then
CalculateDouble = Number * 2 ' 返回结果.
Else
CalculateDouble = CVErr(2001) ' 返回用户定义的错误
End If
End Function