Excel-formel: Räkna rader med minst n matchande värden -

Innehållsförteckning

Generisk formel

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

Sammanfattning

För att räkna rader som innehåller specifika värden kan du använda en matrisformel baserad på funktionerna MMULT, TRANSPOSE, COLUMN och SUM. I exemplet som visas är formeln i K6:

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

där data är det namngivna området C5: I14.

Observera att detta är en matrisformel och måste anges med kontrollskiftet.

Förklaring

Arbetar inifrån och ut, de logiska kriterierna som används i denna formel är:

(data)<70

där data är det namngivna området C5: I14. Detta genererar ett SANT / FALSKT resultat för varje värde i data, och det dubbla negativet tvingar de Sanna FALSKA värdena till 1 och 0 för att ge en matris så här:

(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)

Liksom originaldata är denna matris 10 rader med 7 kolumner (10 x 7) och går in i MMULT-funktionen som array1 . Nästa argument, array2 skapas med:

TRANSPOSE(COLUMN(data)^0))

Här används COLUMN-funktionen som ett sätt att generera en numerisk array med rätt storlek, eftersom matrixmultiplikation kräver kolumneräkningen i array1 (7) för att motsvara radantalet i array2 .

Funktionen COLUMN returnerar matrisen med 7 kolumner (3,4,5,6,7,8,9). Genom att höja denna array till en effekt på noll, slutar vi med en 7 x 1 array som (1,1,1,1,1,1,1), som TRANSPOSE ändras till en 1 x 7 array som (1; 1 ; 1; 1; 1; 1; 1).

MMULT kör sedan och returnerar ett 10 x 1 matrisresultat (2; 0; 0; 3; 0; 0; 0; 1; 0; 0), vilket bearbetas med det logiska uttrycket> = 2, vilket resulterar i en matris med SANT FALSE värden:

(SANN; FALSK; FALSK; SANT; FALSK; FALSK; FALSK; FALSK; FALSK; FALSK).

Vi tvingar igen TRUE FALSE till 1 och 0 med en dubbel negativ för att få en slutlig array i SUM:

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

Som korrekt returnerar 2, antalet namn med minst 2 poäng under 70.

Bra länkar

Räknar rader där villkoret uppfylls minst en kolumn (excelxor)

Intressanta artiklar...