
Üldine valem
=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))
Kokkuvõte
Mitme OR-kriteeriumiga sobivate ridade loendamiseks võite kasutada funktsiooni SUMPRODUCT põhinevat valemit. Näidatud näites on valem F10-s järgmine:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))
See valem tagastab ridade arvu, kus esimene veerg on A või B ja teine veerg X, Y või Z.
Selgitus
Seestpoolt välja töötades rakendatakse kõiki kriteeriume eraldi ISNUMBER + MATCH konstruktsiooniga. Ridade arvu loomiseks veerus 1, mille väärtus on A või B, kasutame:
ISNUMBER(MATCH(B5:B11,("A","B"),0)
MATCH genereerib tulemuste massiivi, mis näeb välja selline:
(1;2;#N/A;1;2;1;2)
ja ISNUMBER teisendab selle massiivi selliseks massiiviks:
(TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE)
Ridade arvu loomiseks veerus 2, mille väärtus on X, Y või Z, kasutame järgmist:
ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))
Siis naaseb MATCH:
(1;2;3;3;#N/A;1;2)
ja ISNUMBER teisendab:
(TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)
Need kaks massiivi korrutatakse SUMPRODUCTi sees kokku, mis teisendab TRUE FALSE väärtused automaatselt matemaatikaoperatsiooni osana 1 ja 0-ks.
Nii et visualiseerimise eesmärgil saadakse lõpptulemus järgmiselt:
=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5
Lahtriviidetega
Eespool toodud näide kasutab kõvakodeeritud massiivikonstante, kuid võite kasutada ka lahtriviiteid:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))
Rohkem kriteeriume
Seda lähenemist saab "suurendada", et käsitleda rohkem kriteeriume. Selles valemiväljaandes näete näidet.