我需要使用以下GoTo
语句捕获一些 VBA 错误:
Sub mySub
On Error GoTo errorHandler:
Workbooks.Open("myWorkbook")
'
' Some Code
'
errorHandler:
MsgBox "ERROR"
End Sub
问题是当没有错误时该errorHandler
部分被执行。
我找到了这个讨论,但答案并没有解决我的问题。
我尝试Exit Sub
按照说明添加一条语句:
Sub mySub
On Error GoTo errorHandler:
Workbooks.Open("myWorkbook")
Exit Sub
'
' Some Code
'
errorHandler:
MsgBox "ERROR"
End Sub
在这种情况下,它会在没有错误时退出该方法。我也试过:
Sub mySub
On Error GoTo errorHandler:
Workbooks.Open("myWorkbook")
'
' Some Code
'
errorHandler:
MsgBox "ERROR"
Exit Sub
End Sub
但仍然是同样的问题:errorHandler
即使没有发生错误,也会执行。