Excel-formel: Tell hvis raden oppfyller interne kriterier -

Innholdsfortegnelse

Generisk formel

=SUMPRODUCT(--(logical_expression))

Sammendrag

For å telle rader i en tabell som oppfyller interne, beregnede kriterier, uten å bruke en hjelpekolonne, kan du bruke SUMPRODUCT-funksjonen.

Kontekst

Tenk deg at du har en oversikt over salgstall for flere produkter. Du har en kolonne for salg i forrige måned og en kolonne for salg i inneværende måned. Du vil telle produkter (rader) der det nåværende salget er mindre enn salget forrige måned. Du kan ikke bruke COUNTIF-er for dette, fordi COUNTIF-er er en rekkebasert funksjon. Et alternativ er å legge til en hjelpekolonne som trekker fra forrige måneds salg fra månedens salg, og deretter bruke COUNTIF til å telle resultater mindre enn null. Men hva om du ikke vil (eller ikke kan) legge til en hjelpekolonne? I så fall kan du bruke SUMPRODUCT.

I eksemplet vist er formelen i celle G6:

=SUMPRODUCT(--(C5:C10>D5:D10))

Forklaring

SUMPRODUCT er designet for å fungere med matriser. Den multipliserer tilsvarende elementer i to eller flere matriser og summerer de resulterende produktene. Som et resultat kan du bruke SUMPRODUCT til å behandle matriser som skyldes kriterier som blir brukt på en rekke celler. Resultatet av slike operasjoner vil være matriser, som SUMPRODUCT kan håndtere naturlig, uten at Control Shift Enter-syntaksen kreves.

I dette tilfellet sammenligner vi bare verdiene i kolonne C med verdiene i kolonne D ved hjelp av et logisk uttrykk:

C5:C10>D5:D10

Siden vi har å gjøre med områder (arrays), er resultatet en rekke SANTE FALSE verdier som dette:

(FALSK; SANT; FALSK; SANT; FALSK; FALSK)

For å tvinge disse til ener og nuller bruker vi en dobbel negativ operator (også kalt en dobbel unary):

--(C5:C10>D5:D10)

Som produserer og arrangerer slik:

(0; 1; 0; 1; 0; 0)

som deretter behandles av SUMPRODUCT. Siden det bare er en matrise, legger SUMPRODUCT ganske enkelt sammen elementene i matrisen og returnerer en total.

Interessante artikler...