在子例程的顶部添加以下行:
On Error Resume Next
该语句完全按照它所说的去做,它忽略了错误并继续执行下一行代码。
使用此语句时需要小心,因为它不能修复错误。对于您当前的问题,应该没问题,但在许多其他问题中,您需要处理错误而不是忽略它。
获得基础知识的一个很好的资源是VBA 中的错误处理。
如果您想了解有关 Excel VBA 的更多信息,brettdj 对What is the best way to master VBA 宏的回答是一个很好的起点。
要查看错误如何受On Error Resume Next
or影响On Error GoTo 0
,请在 VBA 编辑器中逐步执行以下操作:
Sub ExcelVBAErrorDemo()
Dim forceError As Integer
' ignore errors
On Error Resume Next
' cause an error
forceError = 1 / 0
' the error was ignored, and the integer variable will
' display its default value
MsgBox "Our forceError variable = " & forceError
' turn default error handling behavior back on
On Error GoTo 0
' now we'll get a run-time error
forceError = 1 / 0
End Sub