Excel-formel: Tæl unikke numeriske værdier i et interval -

Indholdsfortegnelse

Generisk formel

=SUM(--(FREQUENCY(data,data)>0))

Resumé

For at tælle unikke numeriske værdier i et interval kan du bruge en formel baseret på funktionerne FREKVENS og SUM. I det viste eksempel vises medarbejdernumre i området B5: B14. Formlen i F5 er:

=SUM(--(FREQUENCY(B5:B14,B5:B14)>0))

der returnerer 4, da der er 4 unikke medarbejder-id'er på listen.

Forklaring

Bemærk: Før Excel 365 havde Excel ikke en dedikeret funktion til at tælle unikke værdier. Denne formel viser en måde at tælle unikke værdier på, så længe de er numeriske. Hvis du har tekstværdier eller en blanding af tekst og tal, skal du bruge en mere kompliceret formel.

Excel FREQUENCY-funktionen returnerer en frekvensfordeling, som er en oversigtstabel, der viser hyppigheden af ​​numeriske værdier, organiseret i "bakker". Vi bruger det her som en rundkørsel til at tælle unikke numeriske værdier.

Når vi arbejder indefra og ud, leverer vi det samme sæt numre til både dataarrayet og bakkerarrayet til FREQUENCY:

FREQUENCY(B5:B14,B5:B14)

FREKVENS returnerer en matrix med en optælling af hver numeriske værdi i området:

(4;0;0;0;2;0;1;3;0;0;0)

Resultatet er lidt kryptisk, men betydningen er 905 vises fire gange, 773 vises to gange, 801 vises en gang, og 963 vises tre gange.

FREKVENS har en speciel funktion, der automatisk returnerer nul for alle tal, der allerede er vist i dataarrayet, hvorfor værdier er nul, når et nummer er stødt på.

Dernæst testes hver af disse værdier til at være større end nul:

(4;0;0;0;2;0;1;3;0;0;0)>0

Resultatet er en matrix som denne:

(TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;FALSE;FALSE)

Hver SAND repræsenterer et unikt nummer på listen. SUM ignorerer som standard logiske værdier, så vi tvinger SANDE og FALSKE værdier til 1s og 0s med et dobbelt negativt (-), hvilket giver:

=SUM((1;0;0;0;1;0;1;1;0;0;0))

Endelig tilføjer SUM disse værdier og returnerer det samlede antal, som i dette tilfælde er 4.

Bemærk: du kan også bruge SUMPRODUCT til at opsummere elementerne i arrayet.

Brug af COUNTIF i stedet for FREQUENCY til at tælle unikke værdier

En anden måde at tælle unikke numeriske værdier på er at bruge COUNTIF i stedet for FREQUENCY. Dette er en enklere formel, men pas på, at brug af COUNTIF på større datasæt til at tælle unikke værdier kan forårsage ydeevneproblemer. FREQUENCY-formlen beregner meget hurtigere, selvom den er mere kompliceret.

Gode ​​links

Mike Girvins bog Control-Shift-Enter

Interessante artikler...