返回子类型 Error 的变体,其中包含用户指定的 错误号 。
语法
CVErr ( errornumber )
参数 所需的 错误编号 是任何有效的错误编号。
备注
使用 CVErr 函数在用户创建过程中创建用户定义的错误。 例如,如果创建的函数接受多个参数并通常返回一个字符串,则可以让函数评估输入参数,以确保它们在可接受的范围内。 否则,函数很可能不会返回预期值。 在此事件中, CVErr 允许你返回一个错误号,指示要执行的操作。
请注意,不允许隐式转换 Error 。 例如,不能直接将 CVErr 的返回值分配给不是 Variant 的 变量 。 但是,可以使用 CInt、 CDbl 等) CVErr 返回的值执行显式转换 (,并将其分配给相应 数据类型 的变量。
示例
注意: 下面的示例演示了如何在 Visual Basic for Applications (VBA) 模块中使用此函数。 有关使用 VBA 的详细信息,请在搜索旁边的下拉列表中选择“开发人员参考”,并在搜索框中输入一个或多个术语。
此示例使用 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