【发布时间】:2012-04-25 20:16:37
【问题描述】:
我需要使用GoTo 语句捕获一些 VBA 错误:
Sub mySub
On Error GoTo errorHandler:
Workbooks.Open("myWorkbook")
'
' Some Code
'
errorHandler:
MsgBox "ERROR"
End Sub
问题是当没有错误时,errorHandler 部分会被执行。
我找到了this discussion,但答案并没有解决我的问题。
我尝试按照说明添加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 即使没有发生错误也会被执行。
【问题讨论】:
标签: excel vba error-handling