Обнаружение ошибок в формулах условного форматирования (Microsoft Excel)
Аллан много использует условное форматирование, почти всегда используя формулы для определения условий форматирования. Недавно он случайно обнаружил, что у него #REF! ошибка в одной из его формул условного формата. Насколько Аллан мог понять, это было результатом удаления строки ячейки, указанной в формуле. Влияние состоит в том, что условное форматирование не работает для этого условия. Это заставило Аллана обеспокоиться тем, что существуют и другие примеры условных форматов, которые были повреждены с момента первоначальной установки. Он задается вопросом, есть ли простой способ проверить все условное форматирование, чтобы эти ошибки можно было легко найти.
Лучше всего использовать макрос для пошагового выполнения всех условных форматов, определенных для рабочего листа. Следующий макрос делает именно это, ища любые #REF! ошибки в формулах.
Sub FindCorruptConditionalFormat() Dim c As Range Dim fc As Variant Selection.SpecialCells(xlCellTypeAllFormatConditions).Select For Each c In Selection.Cells For Each fc In c.FormatConditions If InStr(1, fc.Formula1, "#REF!", _ vbBinaryCompare) > 0 Then MsgBox Prompt:=c.Address & ": " _ & fc.Formula1, Buttons:=vbOKOnly End If Next fc Next c End Sub
Если обнаружена ошибка, то в окне сообщения отображается адрес ячейки и формула, используемая в правиле условного форматирования.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (11361) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Detecting_Errors_in_Conditional_Formatting_Formulas [обнаружение ошибок в формулах условного форматирования]
.