![](https://cdn.wiki-base.com/4300983/excel_formula_sumproduct_count_multiple_or_criteria__2.png.webp)
Formula generica
=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))
Sommario
Per contare le righe corrispondenti con più criteri OR, puoi utilizzare una formula basata sulla funzione SUMPRODUCT. Nell'esempio mostrato, la formula in F10 è:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))
Questa formula restituisce un conteggio delle righe in cui la colonna uno è A o B e la colonna due è X, Y o Z.
Spiegazione
Lavorando dall'interno verso l'esterno, ogni criterio viene applicato con una costruzione ISNUMBER + MATCH separata. Per generare un conteggio delle righe nella colonna uno dove il valore è A o B usiamo:
ISNUMBER(MATCH(B5:B11,("A","B"),0)
MATCH genera una matrice di risultati simile a questa:
(1;2;#N/A;1;2;1;2)
e ISNUMBER converte questo array in questo array:
(TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE)
Per generare un conteggio delle righe nella colonna due dove il valore è X, Y o Z usiamo:
ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))
Quindi MATCH restituisce:
(1;2;3;3;#N/A;1;2)
e ISNUMBER converte in:
(TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)
Questi due array vengono moltiplicati insieme all'interno di SUMPRODUCT, che converte automaticamente i valori TRUE FALSE in 1 e 0 come parte dell'operazione matematica.
Quindi, per visualizzare, il risultato finale è derivato in questo modo:
=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5
Con riferimenti di cella
L'esempio precedente utilizza costanti di matrice hardcoded, ma puoi anche utilizzare riferimenti di cella:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))
Più criteri
Questo approccio può essere "scalato" per gestire più criteri. Puoi vedere un esempio in questa sfida formula.