Каждый, кто работает в Excel, рано или поздно, сталкивался с ошибками, которые Excel любезно подсвечивает для нас. Обычно это хорошо, но что делать, если нам нужно их убрать?
Конечно, можно нажать выбрать ячейку и в появившемся меню выбрать действия с ошибкой, пропустить ошибку или узнать о ней подробную информацию.
Чтобы не заморачиваться с каждой ячейкой, зайдите в настройки Excel: Файл ► Параметры ► Формулы, раздел Проверка ошибок и отключите проверку ошибок или отключите причину, которая её вызывает в Правилах проверки ошибок:
Решить задачу, не забираясь каждый раз в параметры, можно используя VBA и свойства объекта ErrorCheckingOptions.
Чтобы задать или вернуть параметры проверки ошибок, объект ErrorCheckingOptions, имеет следующие основные свойства:
- BackgroundChecking (включает/отключает функцию проверки, значение параметра True-Включен/False-Выключен);
- IndicatorColorIndex (определяет цвет ярлычка ошибки, по умолчанию xlColorIndexAutomatic);
- EvaluateToError (отключает ошибки в формулах, например, деление на 0, True/False);
- TextDate (дата в виде текста с двумя цифрами года, True/False);
- NumberAsText (числа отформатированные, как текст, True/False);
- InconsistentFormula (отключает проверку несогласованности формул, True/False).
Перейдём к макросам, тут ничего сложного. Если параметр включен (True), отключить (False), иначе (Else) включить, получается замкнутый круг:
Sub ОтключитьПроверкуОшибок()
If Application.ErrorCheckingOptions.BackgroundChecking = True Then
Application.ErrorCheckingOptions.BackgroundChecking = False
Else:
Application.ErrorCheckingOptions.BackgroundChecking = True
End If
End Sub
Следующий макрос, скроет ярлычки, не отключая проверку ошибок:
Sub СкрытьПроверкуОшибок()
If Application.ErrorCheckingOptions.IndicatorColorIndex = 2 Then
Application.ErrorCheckingOptions.IndicatorColorIndex = xlColorIndexAutomatic '3 красный
Else:
Application.ErrorCheckingOptions.IndicatorColorIndex = 2
End If
End Sub
Макрос заменяет стандартный зелёный цвет ярлычка ошибки на белый, но при наведении на ячейку с ошибкой, подсказка по ней будет доступна.
Заключительный макрос, отключит ошибки для чисел введённых, как текст:
Sub ОтключитьПроверкуОшибокЧислоКакТекст()
If Application.ErrorCheckingOptions.NumberAsText = True Then
Application.ErrorCheckingOptions.NumberAsText = False
Else:
Application.ErrorCheckingOptions.NumberAsText = True
End If
End Sub
Самостоятельно поэкспериментируйте с остальными свойствами.
Часто сталкиваетесь с ошибками в Excel? Пишите в комментариях. Подписывайтесь на канал, до новых встреч.
Интересное по теме Excel:
- Функции Excel: ВПР (вертикальный просмотр)
- Как напечатать заголовки таблицы Excel на каждой странице
- "Умные" таблицы в Excel
- Мгновенное заполнение
- Быстрое перемещение строк и столбцов