Excel-formel: Tæl, hvis række opfylder interne kriterier -

Indholdsfortegnelse

Generisk formel

=SUMPRODUCT(--(logical_expression))

Resumé

For at tælle rækker i en tabel, der opfylder interne, beregnede kriterier uden at bruge en hjælpekolonne, kan du bruge funktionen SUMPRODUCT.

Sammenhæng

Forestil dig, at du har en tabel med salgstal for flere produkter. Du har en kolonne til salg i sidste måned og en kolonne til salg i den aktuelle måned. Du vil tælle produkter (rækker), hvor det aktuelle salg er mindre end salget i sidste måned. Du kan ikke bruge COUNTIF'er til dette, fordi COUNTIF'er er en rækkebaseret funktion. En mulighed er at tilføje en hjælpekolonne, der trækker sidste måneds salg fra denne måneds salg, og derefter bruge COUNTIF til at tælle resultater mindre end nul. Men hvad nu hvis du ikke vil (eller ikke kan) tilføje en hjælpekolonne? I så fald kan du bruge SUMPRODUCT.

I det viste eksempel er formlen i celle G6:

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

Forklaring

SUMPRODUCT er designet til at arbejde med arrays. Det multiplicerer de tilsvarende elementer i to eller flere arrays og summerer de resulterende produkter. Som et resultat kan du bruge SUMPRODUCT til at behandle arrays, der skyldes kriterier, der anvendes på en række celler. Resultatet af sådanne operationer vil være arrays, som SUMPRODUCT kan håndtere indbygget uden at kræve Control Shift Enter syntaks.

I dette tilfælde sammenligner vi blot værdierne i kolonne C med værdierne i kolonne D ved hjælp af et logisk udtryk:

C5:C10>D5:D10

Da vi har at gøre med områder (arrays), er resultatet en matrix af SANDE FALSKE værdier som denne:

(FALSK; SAND; FALSK; SAND; FALSK; FALSK)

For at tvinge disse til ener og nuller bruger vi en dobbelt negativ operator (også kaldet en dobbelt unary):

--(C5:C10>D5:D10)

Hvilket producerer og array som dette:

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

som derefter behandles af SUMPRODUCT. Da der kun er et array, tilføjer SUMPRODUCT simpelthen elementerne i arrayet og returnerer et samlet.

Interessante artikler...