
Generieke formule
=COUNTA(UNIQUE(data))
Samenvatting
Om unieke waarden in een set gegevens te tellen, kunt u de UNIQUE-functie samen met de COUNTA-functie gebruiken. In het getoonde voorbeeld is de formule in F5:
=COUNTA(UNIQUE(B5:B16))
wat 7 retourneert, aangezien er zeven unieke kleuren zijn in B5: B16.
Uitleg
In dit voorbeeld wordt de functie UNIQUE gebruikt om unieke waarden te extraheren. Wanneer UNIQUE is voorzien van het bereik B5: B16, dat 12 waarden bevat, retourneert het de 7 unieke waarden die te zien zijn in D5: D11. Deze worden rechtstreeks naar de COUNTA-functie geretourneerd als een array zoals deze:
=COUNTA(("red";"amber";"green";"blue";"purple";"pink";"gray"))
In tegenstelling tot de COUNT-functie, die alleen cijfers telt, telt COUNTA zowel tekst als cijfers. Aangezien de matrix zeven items bevat, retourneert COUNTA 7. Deze formule is dynamisch en wordt onmiddellijk opnieuw berekend wanneer de brongegevens worden gewijzigd.
Met een celverwijzing
U kunt ook verwijzen naar een lijst met unieke waarden die al naar het werkblad zijn geëxtraheerd met de functie UNIEK met behulp van een speciaal soort celverwijzing. De formule in D5 is:
=UNIQUE(B5:B16)
die de zeven waarden retourneert die worden gezien in D5: D11. Om deze waarden te tellen met een dynamische verwijzing, kunt u een formule als deze gebruiken:
=COUNTA(D5#)
Het hekje (#) vertelt Excel om te verwijzen naar het overloopbereik dat is gemaakt door UNIQUE. Net als de alles-in-één-formule hierboven, is deze formule dynamisch en wordt deze aangepast wanneer gegevens worden toegevoegd aan of verwijderd uit het oorspronkelijke bereik.
Tel unieke negeer-spaties
Om unieke waarden te tellen terwijl je lege cellen negeert, kun je de FILTER-functie als volgt toevoegen:
=COUNTA(UNIQUE(FILTER(data,data"")))
Deze aanpak wordt hier in meer detail uitgelegd. U kunt ook unieke waarden filteren met criteria.
Geen gegevens
Een beperking van deze formule is dat er ten onrechte 1 wordt geretourneerd als er geen waarden in het gegevensbereik zijn. Dit alternatief telt alle waarden die worden geretourneerd door UNIQUE met een lengte groter dan nul. Met andere woorden, het telt alle waarden met ten minste één teken:
=SUM(--(LEN(UNIQUE(B5:B16))>0))
Hier wordt de LEN-functie gebruikt om de lengte van de resultaten van UNIQUE te controleren. De lengtes worden vervolgens gecontroleerd om te zien of ze groter zijn dan nul, en de resultaten worden geteld met de SOM-functie. Dit is een voorbeeld van booleaanse logica. Deze formule sluit ook lege cellen uit van resultaten.
Dynamisch bronbereik
UNIQUE verandert het bronbereik niet automatisch als er gegevens worden toegevoegd of verwijderd. Om UNIQUE een dynamisch bereik te geven dat automatisch naar behoefte wordt aangepast, kunt u een Excel-tabel gebruiken of een dynamisch benoemd bereik maken met een formule.
Geen dynamische arrays
Als u een oudere versie van Excel gebruikt zonder ondersteuning voor dynamische arrays, zijn hier enkele alternatieven.