CVErr 函数
返回包含用户指定的错误号的子类型 Error 的 Variant。
语法
CVErr (errornumber)
所需的 errornumber参数 是任何有效的错误号。
备注
使用 CVErr 函数可在用户创建的过程中创建用户定义的错误。 例如,如果您创建一个可接受多个参数并正常返回一个字符串的函数,则可以让函数计算输入参数以确保它们在可接受的范围内。 如果它们不在可接受的范围内,则您的函数很可能不会返回预期结果。 在此情况下,CVErr 允许您返回一个可告知您应采取何种操作的错误号。
请注意,不允许对 Error 进行隐式转换。 例如,不能直接将 CVErr 的返回值分配给不是 Variant 的变量。 但是,可以使用 CInt、 CDbl 等) CVErr 返回的值来执行显式转换 (,并将其分配给相应 数据类型的变量。
示例
此示例使用 CVErr 函数返回其 VarType 是 vbError (10) 的 Variant 。 如果传递给用户定义函数 CalculateDouble
的参数不是数字,则该函数将返回一个错误。 使用 CVErr 从用户定义的过程中返回用户定义的错误,或延迟处理运行时错误。 使用 IsError 函数测试值是否表示错误。
' Call CalculateDouble with an error-producing argument.
Sub Test()
Debug.Print CalculateDouble("345.45robert")
End Sub
' Define CalculateDouble Function procedure.
Function CalculateDouble(Number)
If IsNumeric(Number) Then
CalculateDouble = Number * 2 ' Return result.
Else
CalculateDouble = CVErr(2001) ' Return a user-defined error
End If ' number.
End Function
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。