Excel-formel: Unika värden med kriterier

Generisk formel

=UNIQUE(FILTER(rng1,rng2=A1))

Sammanfattning

För att extrahera en lista med unika värden från en uppsättning data, medan du tillämpar ett eller flera logiska kriterier, kan du använda UNIQUE-funktionen tillsammans med FILTER-funktionen. I exemplet som visas är formeln i D5:

=UNIQUE(FILTER(B5:B16,C5:C16=E4))

som returnerar de 5 unika värdena i grupp A, se i E5: E9.

Förklaring

I det här exemplet används UNIQUE-funktionen tillsammans med FILTER-funktionen. Arbetar inifrån och ut, FILTER-funktionen används först för att ta bort gränsdata till värden som är associerade med endast grupp A:

FILTER(B5:B16,C5:C16=E4)

Observera att vi hämtar värdet "A" direkt från rubriken i cell E4. Insiderfilter uttrycket C5: C16 = E4 returnerar en matris med SANT FALSKA värden så här:

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

Denna matris används för att filtrera data, och FILTER-funktionen returnerar en annan matris som ett resultat:

("red";"amber";"green";"green";"blue";"pink";"red";"blue";"amber")

Denna matris returneras direkt till UNIQUE-funktionen som arrayargument . UNIQUE tar sedan bort dubbletter och returnerar den slutliga matrisen:

("red";"green";"blue";"pink";"gray")

UNIQUE och FILTER är dynamiska funktioner. Om data i B5: B16 eller C5: C16 ändras kommer uppdateringen att uppdateras omedelbart.

Formeln i G5, som returnerar unika värden associerade med grupp B, är nästan densamma:

=UNIQUE(FILTER(B5:B16,C5:C16=G4))

Den enda skillnaden är att C5: C16 jämförs med värdet i G4, vilket är "B".

Dynamiskt källområde

Eftersom intervall B5: B15 och C5: C16 är hårdkodade direkt i formeln kommer de inte att ändra storlek om data läggs till eller tas bort. Om du vill använda ett dynamiskt omfång som automatiskt ändras när det behövs kan du använda en Excel-tabell eller skapa ett dynamiskt namnintervall med en formel.

Intressanta artiklar...