Формула Excel: СУММПРОИЗВ подсчитывает несколько критериев ИЛИ -

Содержание

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

=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))

Резюме

Чтобы подсчитать совпадающие строки с несколькими критериями ИЛИ, вы можете использовать формулу, основанную на функции СУММПРОИЗВ. В показанном примере формула в F10:

=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))

Эта формула возвращает количество строк, где первый столбец - A или B, а второй столбец - X, Y или Z.

Объяснение

Работая изнутри, каждый критерий применяется с отдельной конструкцией ISNUMBER + MATCH. Чтобы создать количество строк в первом столбце, где значение A или B, мы используем:

ISNUMBER(MATCH(B5:B11,("A","B"),0)

MATCH генерирует массив результатов, который выглядит следующим образом:

(1;2;#N/A;1;2;1;2)

и ISNUMBER преобразует этот массив в этот массив:

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

Чтобы сгенерировать количество строк во втором столбце, где значения X, Y или Z, мы используем:

ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))

Затем MATCH возвращается:

(1;2;3;3;#N/A;1;2)

а ISNUMBER преобразуется в:

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

Эти два массива умножаются вместе внутри SUMPRODUCT, который автоматически преобразует значения TRUE FALSE в 1 и 0 как часть математической операции.

Итак, для визуализации конечный результат получается следующим образом:

=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5

Со ссылками на ячейки

В приведенном выше примере используются жестко запрограммированные константы массива, но вы также можете использовать ссылки на ячейки:

=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))

Больше критериев

Этот подход можно «расширить» для обработки большего количества критериев. Вы можете увидеть пример в этой формуле задачи.

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