Как рассчитывать на основе нескольких условий

1

Я пытаюсь создать следующую формулу

=SUM(IF(AND(K3:K138="Tekken",L3:L138="American Football"),1))

Тем не менее, это всегда, кажется, приводит к нулю, даже если в одной строке будут оба значения для Tekken и американского футбола. Я получил более простую формулу для работы ...

=SUM(IF(K3:K138="Tekken",1))

Эта формула отлично работает и подсчитывает строки, которые имеют значения для Tekken. Мне интересно, почему это работает, но первое приводит к значению 0. У меня есть строки, которые имеют оба значения и должны представлять 1.

Должно ли быть специальное использование AND при работе с массивами?

прививка
источник
Почему вторая функция работает в этом случае?
Jab
Амер дал вам лучший подход. И не работает должным образом с формулами массива, потому что он возвращает один результат (ИСТИНА или ЛОЖЬ), а не массив результатов, поэтому AND(K3:K138="Tekken",L3:L138="American Football")ИСТИНА только, если все значения во всех строках являются назначенными текстовыми значениями. В формулах массива вы можете смоделировать AND с помощью *, чтобы эта версия работала -=SUM(IF((K3:K138="Tekken")*(L3:L138="American Football"),1))
Барри Гудини
Примечание: для 2-й версии COUNTIF лучше=COUNTIF(K3:K138,"Tekken")
Барри Гудини

Ответы:

3

Вы найдете, что COUNTIFSфункция будет лучше для вас.

Так что попробуйте это:

=COUNTIFS(K3:K138,"Tekken",L3:L138,"American Football")

COUNTIFSФункция позволяет выбрать несколько диапазонов , а также критерии , которые вы хотите связать с конкретным диапазоном. Затем выдает сумму всех диапазонов, соответствующих всем критериям.

Тем не менее, причина, по которой ваша функция с ANDне работает, заключается в том AND, что все значения в диапазоне ожидают равных «Tekken» (или «Американский футбол» для другого диапазона), прежде чем она вернет значение ИСТИНА.

Вместо этого, если вы хотите использовать SUMи IFоператоры, вы должны будете вкладывать свои IFоператоры в нечто вроде:

=SUM(IF(K3:K138="Tekken",IF(L3:L138="American Football",1,0),0))

Просто чтобы прояснить это для других читателей, функции с SUMбудут работать, только если вы нажмете Ctrl + Shift + Enter при вводе формулы. Это превращает формулу в формулу массива, и она будет расти { }вокруг формулы. Но COUNTIFSформула не обязательно должна быть функцией массива.

Amer
источник