excel vbaerror handling

我遇到了VBA excel中的error handling问题。 基本上,我有一个情况,我正在处理同一个error handling块中的多个错误。

为了使事情变得简单,我们只需要说:

Sub some_function () On Error go to step1 step2: some code which triggers an error Exit Sub step1: Okay, so far so good. Problem is, that in this block of code can also occur an error with the same Err.Number but I have to deal with him on other way which is not specified in this block of code. go to step 2 End sub 

我正在使用SAP会话连接到SAPgui,我无法预测哪个错误会发生。 如果我可以在error handling块代码中捕获错误,我可以解决这种情况。

所以基本上我是盲目的。 如果发生错误,我尝试做一些其他的事情,如果它工作正常,但如果第二次发生错误(在error handling块内)它会引起我一个错误。

有没有什么解决办法?

更新:

只是想大声。

如果我使用On Error Resume next语句并执行以下操作:

 On Error Resume next some code, line of code that could trigger an error if Err.Number <> 0 Then try to handle an error Err.Clear End if line of code that could also trigger an error If Err.Number <> 0 Then Try to handle an error Err.Clear End If 

那会好吗? 还是有更好的解决scheme?

是否有可能在程序中只使用Resume next语句? 我们只是说我们有一个20行的过程,我想使用第10行到第15行之间的Resume Next语句。是否可以启用和禁用Resume next语句或Error行?

把步骤2中的代码放到一个单独的过程中怎么样? 在那里,你可以做一个新on error goto语句单独的error handling。