注意:当使用On Error Resume Next语句后,应该及时在可能导致错误的代码行之后使用On Error Goto 0语句恢复错误的捕获,即恢复到错误检查的正常状态,以便可以获悉其他任何可能发生的错误。另外,如果使用On Error Resume Next语句忽略了无法忽略的错误,将会立刻结束当前运行的过程。而更糟糕的是,如果宏1调用宏2,但宏2...
在上一节,我们讲解了错误处理语句On Error Resume Next及其应用,利用这种语句来处理错误,可以忽视发生的错误,继续运行之后的语句。今日我们来讲解错误处理的第二种方式:On Error GoTo line 语句,这种语句紧跟一个错误处理语句的行编号或者标签。1 On Error GoTo line语句的理解 利用On Error GoTo line语句可以...
Resume Next 代码解析:在上面的代码中,由于及时使用了 On Error Goto 0 语句,因此,在第 2 次错误发生时(即第 2 个 x/y ),系统将显示内置错误消息,而不是运行ErrHandler标签处的代码。我们看代码的运行结果:总结:1 在上述过程中可能导致错误的代码行的前面添加错误处理语句 On Error Goto ErrHandler ...
注意:当使用On Error Resume Next语句后,应该及时在可能导致错误的代码行之后使用On Error Goto 0语句恢复错误的捕获,即恢复到错误检查的正常状态,以便可以获悉其他任何可能发生的错误。另外,如果使用On Error Resume Next语句忽略了无法忽略的错误,将会立刻结束当前运行的过程。而更糟糕的是,如果宏1调用宏2,但宏2...
On Error GoTo 1 Call test2 Call test3 Call test4 Exit Sub 1: MsgBox "test" End Sub Sub test2() On Error Resume Next Dim sht As Worksheet Set sht = Worksheets(20) MsgBox sht.Name Exit Sub 2: MsgBox "test2" End Sub Sub test3() ...
注意:无论在导致问题的代码行前面使用On Error Resume Next语句还是“On Error Goto标签”语句,要想让程序重新获取其他错误信息,则都必须在导致问题的代码行后面使用On Error Goto 0语句恢复正常的错误捕获状态。否则当前的错误处理程序将对后面的所有错误都起作用。例如,下面的代码由于没有使用On Error Goto 0语句,...
语句一:On Error GoTo 我们首先新建一个工作簿,打开VBE,插入模块,输入以下代码:Sub 删除工作表()On Error GoTo skipSheets("销售").DeleteExit Subskip:MsgBox "工作簿中无此工作表"End Sub 当出现错误时跳转到skip语句然后继续运行。语句二:On Error Resume Next 新建一个工作簿,其中一个工作表名称改为...
在使用On Error Resume Next时,务必在可能出错的代码后使用On Error Goto 0,以保持错误检查的正常状态。忽视无法处理的错误可能导致程序意外结束,特别是当一个宏调用另一个宏时,这可能导致不可预知的错误。因此,正确处理错误是编写稳定VBA代码的关键。总结来说,On Error Goto是VBA中处理异常的关键...
On ErrorResume Next :跳过错误直接执行下一行 一般常见的设置是这样的, 前面设置一个On Error GoTo 标签, 后面标签里面含错误处理. 如下面例子: Subtest()"有错误跳到标签errorhandle"OnErrorGoToerrorhandle:...'你的代码"代码执行到这里没有错误的话, 可以直接退出sub了,不需要往下继续执行errorHandle标签"Exit...