该页面说:
“如果生成错误,则应将数字添加到 vbObjectError 常量中。例如 Err.Raise Number = vbObjectError + 1000。范围 513 - 65535 可用于用户定义的错误。”
奥莱利还说:
“我们剩下的数字在 vbObjectError + 512 到 vbObjectError + 65535 范围内”
好的,我做到了,但我得到了一个本机错误,而不是自定义错误:
Err.Raise vbObjectError + 515
Automation error
A syntax error occurred trying to evaluate a query string
Run Code Online (Sandbox Code Playgroud)
该网站表示该错误消息的错误代码是
EVENT_E_QUERYSYNTAX As Long = &H80040203
Run Code Online (Sandbox Code Playgroud)
VBA 立即窗格证实了这一点:
?&H80040203
-2147220989 <-- equals vbObjectError + 515
Run Code Online (Sandbox Code Playgroud)
bettersolutions.com 还说:
“范围 513 - 65535 可用于用户定义的错误”
如果我应该添加 vbObjectError,并且 513-65535 可用,那么为什么会给Err.Raise vbObjectError + 515
我一个本机 Visual Basic 错误!?
好吧,假设他们的意思是我的自定义代码应该从 513 …
error-handling excel vba custom-errors custom-error-handling