Представьте: вы идеально написали код на VBA, запускаете его, и тут — бац! — появляется непонятное окно с ошибкой «Run-time error '13'». Программа замирает, а вы остаётесь один на один с этим сообщением. Знакомая ситуация? Так вот, обработка ошибок — это ваш способ сказать программе: «Эй, если что-то пойдёт не так, не паникуй! Скажи мне спокойно, в чём дело, и мы вместе решим проблему». Вот простейший пример. Допустим, ваш код пытается открыть файл, которого нет: vba Sub ОткрытьФайл()
' Включаем "режим спокойствия"
On Error GoTo ОбработчикОшибки
' Пытаемся сделать что-то рискованное
Workbooks.Open "C:\Отчёт_которого_нет.xlsx"
' Если всё хорошо, выходим
Exit Sub
ОбработчикОшибки:
' А если ошибка — спокойно объясняем пользователю
MsgBox "Файл не найден! Проверьте путь и название.", vbExclamation
End Sub Видите магию? Теперь вместо грубого «Runtime error 1004» пользователь получает вежливое человеческое объяснение. И программа не «висит» в ожида