
Generisk formel
=SUM(COUNTIF(INDIRECT(("rng1","rng2","rng3")),criteria))
Sammendrag
For å bruke telle et ikke sammenhengende område med kriterier, kan du bruke COUNTIF-funksjonen sammen med INDIRECT og SUM. I eksemplet som vises inneholder celle I5 denne formelen:
=SUM(COUNTIF(INDIRECT(("B5:B8","D7:D10","F6:F11")),">50"))
Forklaring
COUNTIF teller antall celler i et område som oppfyller gitte kriterier. Hvis du prøver å bruke COUNTIF med flere områder adskilt med komma, får du en feil. En løsning er å skrive ut områdene som tekst i en matrisekonstant i INDIRECT-funksjonen slik:
INDIRECT(("B5:B8","D7:D10","F6:F11"))
INDIRECT vil evaluere tekstverdiene og overføre flere områder til COUNTIF. Fordi COUNTIF mottar mer enn ett område, vil det returnere mer enn ett resultat i en matrise. Vi bruker SUM-funksjonen til å "fange" og håndtere matrisen:
=SUM((4,2,3))
SUM-funksjonen returnerer deretter summen av alle verdier, 9. Selv om dette er en matriseformel, krever den ikke CSE, siden vi bruker en matrisekonstant.
Merk: INDIRECT er en ustabil funksjon og kan påvirke arbeidsbokens ytelse.
Flere COUNTIF-er
En annen måte å løse dette problemet på er å bruke mer enn ett ANTALL:
=COUNTIF(B5:B8,">50")+COUNTIF(D7:D10,">50")+COUNTIF(F6:F11,">50")
Med et begrenset antall områder kan denne tilnærmingen være enklere å implementere. Den unngår mulige ytelsespåvirkninger av INDIRECT, og tillater en normal formelsyntaks for områder, slik at områdene oppdateres automatisk med endringer i regnearket.
Enkeltcelleområder
Med enkeltcelleområder kan du skrive en formel uten COUNTIF slik:
=(A1>50)+(C1>50)+(E1>50)
Hvert uttrykk returnerer SANT eller FALSK når det blir tvunget til 1 og null under matteoperasjonen. Dette er et eksempel på bruk av boolsk logikk i en formel.