Определение того, содержит ли ячейка Excel формулу массива или текстовое значение

У меня есть большая таблица, в которой один столбец содержит формулу для каждой строки (точнее, формулу массива), которая возвращается со строкой. Но некоторые формулы перезаписываются аналогичным строковым значением.

Я хотел бы создать условное форматирование для окраски перезаписываемых ячеек.

Как создать формулу, чтобы определить, содержит ли ячейка формулу массива или простое текстовое значение?

Я уже пробовал =CELL("type", A2), но он вернул «l», даже если ячейка содержала формулу.


person hunyadym    schedule 15.12.2014    source источник
comment
В Excel 2013 появилась функция ISFORMULA если это имеет отношение к вашей конкретной ситуации.   -  person    schedule 15.12.2014


Ответы (1)


К счастью, функция FORMULATEXT делает именно это в версии Excel 2013 года.

Похоже, вы хотите определить, есть ли формула или нет, верните текст, поэтому я бы рекомендовал добавить функцию IFNA, а также как в примере ниже.

=IFNA(FORMULATEXT(A1),"No Formula")

Вы даже можете сделать еще один шаг вперед с помощью оператора IF.

=IF(IFNA(FORMULATEXT(A1),"No Formula")="No Formula","This is simple text","This is a formula")

Ознакомьтесь с подкастом Билла Джелина о том, как это сделать в предыдущих версиях Excel.

Изучите Excel 2010 - «= ТЕКСТ ФОРМУЛЫ () в Excel 2010»: подкаст № 1691

person Dave Excel    schedule 15.12.2014
comment
Разве XL2013 функция ISFORMULA немного сократить этот IF критерий? - person ; 15.12.2014
comment
Да ... Да, безусловно. - person Dave Excel; 15.12.2014