vba - 你如何在指定的行中使用 ErrorHandler
问题描述
ErrorHandler
我的代码开头有一个( On Error GoTo ErrorHandler
),它工作正常。但现在我想添加几个处理程序(ErrorHandler1
和ErrorHandler2
),每个处理程序检查代码中的特定行。有人有想法吗?
解决方案
您可以覆盖当前处理程序或在单个处理程序中使用选择案例。
有两个处理程序:
Sub test()
Dim x As Long
x = 0
On Error GoTo errorhandler
Debug.Print 5 / x
On Error GoTo errorhandler2
Debug.Print 5 / x
Exit Sub
errorhandler:
Debug.Print Err.Number
Resume Next
errorhandler2:
Debug.Print Err.Number, "handler2"
Resume Next
End Sub
使用 select case 根据收到的错误处理错误:
Sub test2()
Dim x As Long
x = 0
On Error GoTo errorhandler
Debug.Print 5 / x
Rows(x).EntireRow.Delete
Exit Sub
errorhandler:
Select Case Err.Number
Case 11
Debug.Print Err.Number
Resume Next
Case 1004
Debug.Print Err.Number
Resume Next
End Select
End Sub
推荐阅读
- javascript - _idi_的MongoDB E11000重复键错误
- c++ - 为什么我的类变量在方法之间改变它的值?
- magento2 - Magento2 备份已禁用
- java - 旋转时java歪斜的形状
- jquery - jQuery 区分 click() 和 dblclick()
- python - Python:如果键存在于while循环中,则添加到现有字典值?
- python - 在 macos 上使用 OpenGL 和 python 时出错
- jenkins - 如何为詹金斯设置 Maven 设置
- javascript - 如何理解函数 app.listen 的 Expressjs 文档
- javascript - 如果它不是表单,则在烧瓶中获取按钮?