小编Spa*_*ode的帖子

为什么在 VBA 中引发用户定义的错误时需要使用 vbObjectError 常量?

\n

微软 Visual Basic 应用程序 7.1;1088版

\n
\n\n
\n\n

我按照在线教程创建了一个自定义错误处理程序,并且已经使用它大约一年了,但我仍然不明白将vbObjectError常量添加到 513-65535 之间的数字的部分,该部分是为用户保留的- 定义的错误。大多数教程会推荐使用Err.Raise vbOjectError + 1000生成自定义错误的示例。这样做的原因是为了避免与错误 0-512 重叠,这些错误是为系统错误保留的。如果我必须围绕这个想法编写代码,代码将如下所示:

\n\n
Option Explicit\n\nSub raiseError()\n\n    On Error GoTo errorHandler\n\n    Dim x As Double\n    Dim y As Double\n\n    Let x = 4.8\n    Let y = 5.5\n\n    If x <> y Then\n        Err.Raise vbObjectError + 1000\n    End If\n\nerrorHandler:\n\n    Select Case Err.Number\n        Case vbEmpty\n            MsgBox "alright!"\n\n        Case vbObjectError + 1000\n            MsgBox ("User-defined error \'" & Err.Number & "\':" & _\n            vbNewLine & …
Run Code Online (Sandbox Code Playgroud)

excel vba

8
推荐指数
1
解决办法
3162
查看次数

标签 统计

excel ×1

vba ×1