Filtreringslister gir deg en rask oversikt over dataene som samsvarer med filterkriteriene. Men hvordan sikrer du at du også kan evaluere og telle de viste datapostene på andre måter?
Beregninger i filtrerte lister kan bare utføres ved hjelp av tabellfunksjonen DEL RESULTAT, som bare tar hensyn til de filtrerte radene. Alle andre funksjoner gir et resultat uavhengig av gjeldende filterinnstillinger. Ved å bruke tabellfunksjonen PARTIELLE RESULTATER, får du også resultater som endres umiddelbart hvis du angir andre filterkriterier.
Du kan telle i filtrerte lister via PARTIELT RESULTAT, men bare uten en betingelse eller et kriterium.
Hvis du vil telle på grunnlag av et kriterium i filtrerte lister, bruker du imidlertid følgende matriseformel:
= SUMPRODUCT ((Kriterieområde = Kriterium) * (SUBRESULTAT (3; AREA.MOVE (FirstCell; LINE (Criteria area) -LINE (FirstCell);;))))
Du sender tre argumenter til matriseformelen: With Kriterieområde passere hele kolonnen i listen du vil kontrollere for kriteriet. Ovenfor kriterier passere kriteriet angitt i Kriterieområde må være oppfylt for at formelen skal telle raden. Det tredje argumentet Første celle passerer den første cellen i kriterieområdet.
Formelen teller alle filtrerte linjer som er i Kriterieområde med kriterier å passe. Formelen er en matriseformel som du kan bruke tastekombinasjonen etter at du har angitt den Ctrl + Shift + Enter bekrefte.
I arbeidsboken som vises, gir følgende matriseformel i celle B21 resultatet 2:
= SUMPRODUCT (($ C $ 4: $ C $ 18 = A21) * (SUB -RESULTAT (3; AREA.MOVE ($ C $ 4; LINE ($ C $ 4: $ C $ 18) -LINE ($ C) $ 4);;)))))
Bare de to filtrerte linjene 7 og 9 samsvarer med søkekriteriet "Åpne" fra celle A21.
Formelen teller antall dataposter det søkes etter
Ved å bruke følgende metode, teller matriseformelen antallet som er søkt basert på kriteriet:
- Funksjonen PARTIELLE RESULTATER setter inn COUNT2 -funksjonen gjennom det andre argumentet av tre. Dette betyr at alle fylte celler som er filtrert, telles.
- Via AREA.MOVE lager du en referanse på én linje for hver linje i området C4: C18. Du sender denne enkeltlinjereferansen til PARTIAL RESULT-funksjonen.
- Dette betyr at PARTIAL RESULT kun returnerer tallet 1 hvis linjen er filtrert og vist som 0.
- DEL RESULT returnerer verdien 0 for ufiltrerte linjer.
- Du overfører de tellede til SUM-PRODUCT-funksjonen.
- Der multipliseres de med resultatet av sammenligningen mellom celle A21 og det respektive innholdet fra den tilsvarende linjen i området C4: C18.
- Bare hvis sammenligningen er positiv, blir den overførte 1 multiplisert med TRUE og resultatet av 1 er også inkludert i totalen levert av SUMPRODUCT.