Использование On Error Resume Next при обработке ошибок может быть нежелательно по нескольким причинам:
- Игнорирование ошибок. 15 On Error Resume Next не исправляет ошибки, а обходит их, игнорируя строки кода с ошибками и переходя к следующей строке. 45
- Отсутствие информации об ошибках. 2 При использовании On Error Resume Next в процессе работы программы может произойти много ошибок времени выполнения, но разработчик нигде не получит информации об этом. 2
- Ложное срабатывание. 2 Если в вызывающей процедуре тоже используется On Error Resume Next, то перехват может дать ложное срабатывание. 2
- Нарушения в системе обработки ошибок. 2 При «незакрытом» (не отменённом в пределах процедуры, в которой произошла установка) On Error Resume Next могут возникнуть нарушения в системе обработки ошибок. 2
Использование On Error Resume Next наиболее оправдано, когда ожидается ошибка единственного типа или набор ожидаемых ошибок хорошо определён и может использоваться для управления дальнейшим ходом программы. 2