Я пытаюсь создать следующую формулу
=SUM(IF(AND(K3:K138="Tekken",L3:L138="American Football"),1))
Тем не менее, это всегда, кажется, приводит к нулю, даже если в одной строке будут оба значения для Tekken и американского футбола. Я получил более простую формулу для работы ...
=SUM(IF(K3:K138="Tekken",1))
Эта формула отлично работает и подсчитывает строки, которые имеют значения для Tekken. Мне интересно, почему это работает, но первое приводит к значению 0. У меня есть строки, которые имеют оба значения и должны представлять 1.
Должно ли быть специальное использование AND при работе с массивами?
AND(K3:K138="Tekken",L3:L138="American Football")
ИСТИНА только, если все значения во всех строках являются назначенными текстовыми значениями. В формулах массива вы можете смоделировать AND с помощью *, чтобы эта версия работала -=SUM(IF((K3:K138="Tekken")*(L3:L138="American Football"),1))
=COUNTIF(K3:K138,"Tekken")
Ответы:
Вы найдете, что
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
формула не обязательно должна быть функцией массива.источник