Условное форматирование. Выделите группу ячеек, если они содержат менее 2 указанного символа

У меня есть группа из 4-х ячеек, мне нужен условный формат, чтобы выделить, если они содержат менее 2 определенного символа. Скажем, в этом случае мы ищем «^».

Так что, если есть более одного, тогда ничего не будет выделено так

введите описание изображения здесь

но если есть 1, то необходимо выделить, что один

введите описание изображения здесь

если их нет, тогда он должен выделить все 4 ячейки

введите описание изображения здесь

Я попытался использовать SEARCH и COUNTIF в формуле условного формата, но я не могу понять, как это правильно.

Попробуй это:

=OR(AND(NOT(ISERR(FIND("^",A1))), SUMPRODUCT(--NOT(ISERR(FIND("^",A$1:A$4))))=1), SUMPRODUCT(--NOT(ISERR(FIND("^",A$1:A$4))))=0) 

Выход:

Условное форматирование

Объяснение:

Функция FIND повышает значение #VALUE! если он не может найти строку поиска.

Второй FIND, который появляется как второй аргумент для AND, проверяет, содержится ли «^» в любой ячейке диапазона A1: A4. Это возвращает массив значений, который преобразуется в логический массив с помощью ISERR. NOT инвертирует каждое логическое значение в массиве, а double минус (-) преобразует булевы в числа (FALSE в 0, TRUE – 1). SUMPRODUCT суммирует окончательный массив, и мы проверяем, равна ли полученная сумма равным 1.

Таким образом, удовлетворяет первой части первого условия; т.е. эта часть говорит нам, что «^» появляется точно в одной ячейке внутри диапазона.

Затем первая функция FIND проверяет, появляется ли в текущей ячейке «^», а не весь диапазон. Поэтому, когда условный формат применяется к ячейке A2, эта часть проверяет, появляется ли символ «^» в A2. Остальная часть (NOT, ISERR) делает то же самое.

Эти два условия должны выполняться одновременно, и, следовательно, мы обертываем И вокруг этих двух. Это завершает первый аргумент OR.

Вторая часть OR представляет второе условие, которое совпадает с вторым аргументом функции AND, которую мы видели ранее, за исключением того, что это проверяет, равна ли сумма массива 0, т. Е. Нет ячеек с "^" были найдены.

В отличие от первого аргумента OR, мы не ограничиваем это с помощью функции AND, так как мы хотим, чтобы все ячейки были окрашены, а не только относительная ячейка, где появляется «^».

Во-первых, не делайте ничего, чтобы создать вторую формулу:

 =AND(COUNTIF($A:$A;"*^*")=1;FIND("^";A1)>1) 

для третьей вещи создайте формулу:

 =COUNTIF($A:$A;"*^*")=0 
Interesting Posts
Давайте будем гением компьютера.