Формула на Excel: Бройте редове с поне n съвпадащи стойности -

Съдържание

Обща формула

(=SUM(--(MMULT(--(criteria),TRANSPOSE(COLUMN(data)^0))>=N)))

Обобщение

За да преброите редове, които съдържат конкретни стойности, можете да използвате формула на масив, базирана на функциите MMULT, TRANSPOSE, COLUMN и SUM. В показания пример формулата в K6 е:

(=SUM(--(MMULT(--((data)=2)))

където данните са наименуваният диапазон C5: I14.

Обърнете внимание, че това е формула на масив и трябва да се въведе с контрола shift enter.

Обяснение

Работейки отвътре навън, логическите критерии, използвани в тази формула, са:

(data)<70

където данните са наименуваният диапазон C5: I14. Това генерира TRUE / FALSE резултат за всяка стойност в данните и двойното отрицателно принуждава TRUE FALSE стойности на 1 и 0, за да се получи масив като този:

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

Подобно на оригиналните данни, този масив е 10 реда по 7 колони (10 x 7) и влиза във функцията MMULT като array1 . Следващият аргумент, array2 се създава с:

TRANSPOSE(COLUMN(data)^0))

Тук функцията COLUMN се използва като начин за генериране на числов масив с правилния размер, тъй като умножението на матрицата изисква броят на колоните в array1 (7) да е равен на броя на редовете в array2 .

Функцията COLUMN връща масива от 7 колони (3,4,5,6,7,8,9). Чрез повишаване на този масив до степен нула, в крайна сметка получаваме масив 7 x 1 като (1,1,1,1,1,1,1,1), който TRANSPOSE се променя на масив 1 x 7 като (1; 1 ; 1; 1; 1; 1; 1).

След това MMULT изпълнява и връща резултат от масив 10 x 1 (2; 0; 0; 3; 0; 0; 0; 1; 0; 0), който се обработва с логическия израз> = 2, което води до масив от TRUE FALSE стойности:

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

Отново принуждаваме TRUE FALSE до 1 и 0 с двойно отрицание, за да получим окончателен масив вътре в SUM:

=SUM((1;0;0;1;0;0;0;0;0;0))

Което правилно връща 2, броя на имената с поне 2 точки под 70.

Добри връзки

Преброяване на редове, при които е изпълнено условието поне в една колона (excelxor)

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