Excel-formel: Minimumsværdi, hvis den er unik -

Indholdsfortegnelse

Generisk formel

=MIN(UNIQUE(range,0,1))

Resumé

For at finde den mindste unikke værdi i et datasæt kan du bruge UNIQUE-funktionen sammen med MIN-funktionen. I eksemplet nedenfor er formlen i E5:

=MIN(UNIQUE(data,0,1))

hvor "data" er det navngivne område B5: B14.

I ældre versioner af Excel kan du bruge en matrixformel baseret på MIN, IF og COUNTIF-funktionerne som forklaret nedenfor.

Forklaring

Målet i dette eksempel er at returnere den minimumsværdi, der er unik, dvs. den mindste værdi, der kun forekommer en gang i dataene.

UNIQUE-funktionen, ny i Excel 365, returnerer en unik liste over værdier fra et datasæt. Som standard er dette en liste over enhver værdi, der forekommer en eller flere gange i dataene.

UNIQUE har et valgfrit tredje argument kaldet "exact_once", der begrænser resultater til værdier, der kun forekommer en gang i kildedataene. For at aktivere denne funktion skal argumentet indstilles til SAND eller 1.

Arbejder indefra og ud, UNIQUE-funktionen er konfigureret således:

UNIQUE(data,0,1)

Til array, giver vi det navngivne område dataene . Til argumentet by_col bruger vi nul (0), da vi ønsker unikke værdier efter rækker, ikke kolonner. Endelig giver vi for nøjagtigt én gang 1, da vi kun ønsker værdier, der kun forekommer en gang i kildedataene.

Konfigureret på denne måde returnerer UNIQUE de 4 værdier, der kun vises en gang:

(700;600;500;300) // result from unique

Denne matrix returneres direkte til MIN-funktionen, som returnerer minimumsværdien, 300, som det endelige resultat:

=MIN((700;600;500;300)) // returns 300

Arrayformel med COUNTIF

Hvis du bruger en version af Excel uden UNIQUE-funktionen, kan du finde den unikke minimumværdi med en matrixformel baseret på COUNTIF-, MIN- og IF-funktionerne.

(=MIN(IF(COUNTIF(data,data)=1,data)))

Dette er en matrixformel og skal indtastes med kontrol + skift + enter, undtagen i Excel 365.

Arbejder indefra og ud, COUNTIF-funktionen bruges til at generere et antal af hver værdi i dataene som denne:

COUNTIF(data,data) // count all values

Fordi der er 10 værdier i navngivne område data , TÆL.HVIS returnerer et array af 10 resultater:

(2;1;1;2;1;2;2;2;1;2)

Denne matrix indeholder antallet af hver værdi. Dernæst tester vi arrayet for værdier svarende til 1:

(2;1;1;2;1;2;2;2;1;2)=1

Igen får vi en matrix med 10 resultater:

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

Hver SAND værdi svarer til en værdi i kildedataene, der forekommer kun én gang. Denne matrix leveres direkte til IF-funktionen, som bruger den som et filter. Kun værdier i data, der er knyttet til SAND, gør det til det array, der returneres af IF, alle andre værdier er FALSE.

(FALSE;700;600;FALSE;500;FALSE;FALSE;FALSE;300;FALSE)

Denne matrix returneres direkte til MIN-funktionen, som automatisk ignorerer logiske værdier og returnerer minimum af resterende værdier, 300, som et endeligt resultat.

Interessante artikler...