Я ожидаю, что этот простой VBA молча обрабатывать все 10 ошибок, но по какой-то причине, только первый обрабатывается тихо:Почему этот обработчик ошибок VBA не работает?
Public Sub HandleError()
For i = 1 To 10
On Error GoTo Continue
ThrowError
Continue:
Err.Clear
Next i
End Sub
Public Sub ThrowError()
Err.Raise vbObjectError + 1000
End Sub
Является ли это правильное поведение для приведенного выше кода? Или это ошибка в VBA?
Правильное использование 'On Error GoT Для правильной повторной активации o требуется одна из двух вещей: (1) 'Resume',' Resume Next' или 'Resume
Это сработало. Благодаря! –
Добро пожаловать! Хотя я надеюсь, что это всего лишь игрушечный проект, который поможет лучше понять вещи, а не начало какой-то реальной схемы использования обработки ошибок VBA таким образом. Потому что это закончится слезами. – rskar