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

Indholdsfortegnelse

Generisk formel

=SUMPRODUCT((logical1)*(logical2))

Resumé

For at tælle rækker i en tabel, der opfylder flere kriterier, hvoraf nogle afhænger af logiske tests, der fungerer på række-niveau, kan du bruge funktionen SUMPRODUCT.

Sammenhæng

Du har en tabel, der indeholder resultaterne af sportskampe. Du har fire kolonner: hjemmehold, udehold, hjemmeholdsscore, besøgsholdsscore. For et givet hold vil du kun tælle kampe (rækker), hvor holdet vandt hjemme. Det er let at tælle kampe (rækker), hvor et hold var hjemmeholdet, men hvordan tæller du kun vinder?

Dette er en god brug af SUMPRODUCT-funktionen, som kan håndtere arrayoperationer (tænk operationer, der beskæftiger sig med områder) indbygget.

I det viste eksempel er formlen i celle H5:

=SUMPRODUCT((B5:B10=G5)*(D5:D10>E5:E10))

Forklaring

SUMPRODUCT-funktionen er programmeret til at håndtere arrays indbygget uden at kræve Control Shift Enter. Standardadfærden er at multiplicere de tilsvarende elementer i en eller flere arrays sammen og derefter summere produkterne. Når det gives et enkelt array, returnerer det summen af ​​elementerne i arrayet.

I dette eksempel bruger vi to logiske udtryk i et enkelt array-argument. Vi kunne placere hvert udtryk i et separat argument, men så skulle vi tvinge logiske TRUE FALSE-værdier til en og nuller med en anden operator.

Ved at bruge multiplikationsoperatoren til at multiplicere de to arrays sammen vil Excel automatisk tvinge logiske værdier til en og nuller.

Når de to logiske udtryk er evalueret, ser formlen sådan ud:

=SUMPRODUCT(((FALSE;TRUE;FALSE;TRUE;FALSE;TRUE))*((TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)))

Når de to arrays er ganget, ser formlen sådan ud:

=SUMPRODUCT((0;1;0;0;0;1))

Med kun én matrix tilbage, tilføjer SUMPRODUCT simpelthen elementerne i arrayet og returnerer summen.

Interessante artikler...