Формула Excel: XLOOKUP с логической логикой ИЛИ -

Общая формула

=XLOOKUP(1,boolean_expression,data)

Резюме

Чтобы настроить XLOOKUP с помощью логической логики ИЛИ, используйте значение поиска 1 с логическим выражением, основанным на сложении. В показанном примере формула в G5:

=XLOOKUP(1,(data(Color)="red")+(data(Color)="pink"),data)

где «данные» - это имя таблицы Excel слева.

Объяснение

Значение подстановки представлено как 1 по причинам, которые станут понятны ниже. Для массива поиска мы используем выражение, основанное на логической логике:

(data(Color)="red")+(data(Color)="pink")

В мире булевой алгебры логика И соответствует умножению (*), а логика ИЛИ соответствует сложению (+). Поскольку нам нужна логика ИЛИ, в этом случае мы используем сложение. Обратите внимание, что в Excel регистр не учитывается, поэтому нам не нужно использовать цвета с заглавной буквы.

После вычисления выражения у нас есть два массива значений TRUE и FALSE, например:

(FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)+ (FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE)

Обратите внимание, что в первом массиве значения ИСТИНА соответствуют «красному». Во втором массиве значения ИСТИНА соответствуют «розовому».

Математическая операция сложения этих массивов вместе преобразует значения ИСТИНА и ЛОЖЬ в единицы и нули, и в результате получается новый массив, состоящий только из единиц и нулей:

(0;0;1;0;1;0;0;0;0;1)

Обратите внимание, что единицы в этом массиве соответствуют строкам, в которых цвет либо «красный», либо «розовый».

Теперь мы можем переписать формулу как:

=XLOOKUP(1,(0;0;1;0;1;0;0;0;0;1),data)

Первая 1 в поисковом массиве соответствует третьей строке данных, цвет которой - «красный». Поскольку XLOOKUP по умолчанию возвращает первое совпадение, и поскольку вся таблица «data» предоставляется как возвращаемый массив, XLOOKUP возвращает третью строку в качестве окончательного результата.

Интересные статьи...