Excel UNIQUE funkció - az egyedi értékek megtalálásának leggyorsabb módja

  • Ossza Meg Ezt
Michael Brown

A bemutató azt vizsgálja, hogyan lehet egyedi értékeket kapni az Excelben az UNIQUE függvény és a dinamikus tömbök segítségével. Megtanul egy egyszerű képletet, amellyel egyedi értékeket találhat egy oszlopban vagy sorban, több oszlopban, feltételek alapján, és még sok minden mást.

Az Excel korábbi verzióiban az egyedi értékek listájának kinyerése nehéz kihívást jelentett. Külön cikkben mutatjuk be, hogyan lehet megtalálni az egyszer előforduló egyedeket, hogyan lehet kinyerni az összes különböző elemet egy listából, hogyan lehet figyelmen kívül hagyni az üres részeket és így tovább. Mindegyik feladat több függvény és egy többsoros tömbképlet együttes használatát igényelte, amit csak az Excel-guruk érthetnek meg teljesen.

Az UNIQUE funkció bevezetése az Excel 365-ben mindent megváltoztatott! Ami korábban rakétatudomány volt, az most olyan egyszerűvé válik, mint az ABC. Most már nem kell képletszakértőnek lennie ahhoz, hogy egy vagy több kritérium alapján egyedi értékeket kapjon egy tartományból, és az eredményeket ábécérendbe rendezze. Mindezt egyszerű képletekkel, amelyeket mindenki el tud olvasni és a saját igényeihez igazítani.

    Excel UNIQUE funkció

    Az Excel UNIQUE függvénye egy tartomány vagy tömb egyedi értékeinek listáját adja vissza. Bármilyen adattípussal működik: szöveggel, számokkal, dátumokkal, időpontokkal stb.

    A függvény a Dinamikus tömbök függvények kategóriájába tartozik. Az eredmény egy dinamikus tömb, amely automatikusan átterjed a szomszédos cellákra függőlegesen vagy vízszintesen.

    Az Excel UNIQUE függvény szintaxisa a következő:

    UNIQUE(array, [by_col], [exactly_once])

    Hol:

    Array (kötelező) - az a tartomány vagy tömb, amelyből az egyedi értékeket vissza kell adni.

    By_col (opcionális) - logikai érték, amely az adatok összehasonlításának módját jelzi:

    • TRUE - összehasonlítja az adatokat az oszlopok között.
    • FALSE vagy elhagyva (alapértelmezett) - sorok közötti összehasonlítás.

    Exactly_once (opcionális) - logikai érték, amely meghatározza, hogy mely értékek tekinthetők egyedinek:

    • TRUE - olyan értékeket ad vissza, amelyek csak egyszer fordulnak elő, ami az adatbázisban az egyediség fogalmát jelenti.
    • FALSE vagy elhagyva (alapértelmezett) - a tartomány vagy tömb összes különböző (eltérő) értékét adja vissza.

    Megjegyzés: Az UNIQUE funkció jelenleg csak az Excel for Microsoft 365 és az Excel 2021 programban érhető el. Az Excel 2019, 2016 és korábbi verziók nem támogatják a dinamikus tömbképleteket, így az UNIQUE funkció ezekben a verziókban nem érhető el.

    Alapvető UNIQUE képlet az Excelben

    Az alábbiakban egy Excel egyedi értékek képletet mutatunk be a legegyszerűbb formában.

    A cél az egyedi nevek listájának kinyerése a B2:B10 tartományból. Ehhez a következő képletet írjuk be a D2-be:

    =UNIQUE(B2:B10)

    Vegye észre, hogy a 2. és 3. argumentumot elhagyjuk, mert az alapértelmezettek tökéletesen működnek a mi esetünkben - a sorokat egymással hasonlítjuk össze, és a tartományban lévő összes különböző nevet szeretnénk visszaadni.

    Amikor az Enter billentyűt megnyomja a képlet befejezéséhez, az Excel az első megtalált nevet adja ki a D2-ben, a többi nevet pedig az alatta lévő cellákba. Ennek eredményeképpen az összes egyedi értéket egy oszlopban kapja meg:

    Ha az adatai a B2-től I2-ig terjedő oszlopok között vannak, a 2. argumentumot állítsa TRUE értékre, hogy az oszlopokat egymással összehasonlítsa:

    =UNIQUE(B2:I2,TRUE)

    Írja be a fenti képletet a B4-be, nyomja meg az Entert , és az eredmények vízszintesen átfolynak a jobb oldali cellákba. Így egy sorban kapja meg az egyedi értékeket:

    Tipp: Ha több oszlopos tömbökben szeretne egyedi értékeket találni és azokat egy oszlopban vagy sorban visszaadni, használja az UNIQUE funkciót a TOCOL vagy TOROW függvénnyel együtt, ahogy az alábbi példákban látható:

    • Egyedi értékek kivonása egy több oszlopos tartományból egy oszlopba
    • Egyedi értékek kihúzása egy sorba egy több oszlopos tartományból

    Excel UNIQUE funkció - tippek és megjegyzések

    Az UNIQUE egy új függvény, és a többi dinamikus tömbfüggvényhez hasonlóan van néhány sajátossága, amivel tisztában kell lenned:

    • Ha az UNIQUE által visszaadott tömb a végeredmény (azaz nem adjuk át egy másik függvénynek), az Excel dinamikusan létrehoz egy megfelelő méretű tartományt, és feltölti azt az eredményekkel. A képletet csak a következő helyen kell megadni. egy cella Fontos, hogy legyen elég üres cella a képlet beírására szolgáló cellától lefelé és/vagy jobbra, különben #SPILL hiba lép fel.
    • Az eredmények automatikus frissítés A hivatkozott tömbön kívül hozzáadott új bejegyzések azonban nem kerülnek bele a képletbe, hacsak nem változtatja meg a array Ha azt szeretné, hogy a array hogy automatikusan reagáljon a forrástartomány átméretezésére, majd alakítsa át a tartományt Excel-táblázattá, és használjon strukturált hivatkozásokat, vagy hozzon létre dinamikus névvel ellátott tartományt.
    • A különböző Excel-fájlok közötti dinamikus tömbök csak akkor működnek, ha mindkét munkafüzet nyitva van Ha a forrásmunkafüzetet bezárják, a kapcsolódó UNIQUE képlet #REF! hibát ad vissza.
    • A többi dinamikus tömbfüggvényhez hasonlóan az UNIQUE is csak egy normál tartomány Ha Excel táblázatokon belül helyezzük el, akkor #SPILL! hibát ad vissza.

    Egyedi értékek keresése az Excelben - képletpéldák

    Az alábbi példák az UNIQUE függvény néhány gyakorlati felhasználását mutatják be az Excelben. A fő gondolat az, hogy a lehető legegyszerűbb módon egyedi értékeket nyerjünk ki, vagy távolítsuk el a duplikátumokat, a nézőpontunktól függően.

    Csak egyszer előforduló egyedi értékek kivonása

    Ha olyan értékek listáját szeretné megkapni, amelyek pontosan egyszer szerepelnek a megadott tartományban, akkor az UNIQUE 3. argumentumát állítsa TRUE-ra.

    Például, ha egyszer szeretné a nyertesek listáján szereplő neveket kiválasztani, használja ezt a képletet:

    =UNIQUE(B2:B10,,TRUE)

    Ahol B2:B10 a forrás tartománya és a 2. argumentum ( by_col ) FALSE vagy elhagyható, mivel adataink sorokba vannak rendezve.

    Többszörösen előforduló különálló értékek keresése

    Ha ezzel ellentétes célt követ, azaz egy adott tartományban többször előforduló értékek listáját szeretné megkapni, akkor használja az UNIQUE funkciót a FILTER és a COUNTIF funkcióval együtt:

    UNIQUE(FILTER( tartomány , COUNTIF( tartomány , tartomány )>1))

    Például a B2:B10-ben többször előforduló különböző nevek kivonásához használhatja ezt a képletet:

    =UNIQUE(FILTER(B2:B10, COUNTIF(B2:B10, B2:B10)>1))

    Hogyan működik ez a képlet:

    A képlet középpontjában a FILTER függvény kiszűri a duplikált bejegyzéseket a COUNTIF függvény által visszaadott előfordulásszám alapján. Esetünkben a COUNTIF függvény eredménye a számlálásoknak ez a tömbje:

    {4;1;3;4;4;1;3;4;3}

    Az összehasonlító művelet (>1) a fenti tömböt TRUE és FALSE értékekre változtatja, ahol a TRUE a többször előforduló elemeket jelenti:

    {IGAZ;HAMIS;IGAZ;IGAZ;IGAZ;IGAZ;HAMIS;IGAZ;IGAZ;IGAZ;IGAZ;IGAZ}

    Ezt a tömböt a FILTER-nek adjuk át, mint a tartalmazza a címet. argumentum, amely megmondja a függvénynek, hogy mely értékeket vegye fel a kapott tömbbe:

    {"Andrew"; "David"; "Andrew"; "Andrew"; "Andrew"; "David"; "Andrew"; "David"}

    Mint látható, csak a TRUE-nak megfelelő értékek maradnak meg.

    A fenti tömb a array argumentum UNIQUE, és a duplikátumok eltávolítása után kiadja a végeredményt:

    {"Andrew"; "David"}

    Tipp. Hasonló módon szűrheti azokat az egyedi értékeket, amelyek több mint kétszer (>2), több mint háromszor (>3) stb. fordulnak elő. Ehhez egyszerűen változtassa meg a számot a logikai összehasonlításban.

    Egyedi értékek keresése több oszlopban (egyedi sorok)

    Abban a helyzetben, amikor két vagy több oszlopot akar összehasonlítani, és a köztük lévő egyedi értékeket akarja visszaadni, vegye fel az összes céloszlopot a array érv.

    Ha például a nyertesek egyedi keresztnevét (A oszlop) és vezetéknevét (B oszlop) szeretnénk megadni, az E2-be a következő képletet írjuk be:

    =UNIQUE(A2:B10)

    Az Enter billentyű megnyomásával a következő eredményt kapja:

    Ahhoz, hogy egyedi sorok , azaz az A, B és C oszlopok értékeinek egyedi kombinációját tartalmazó bejegyzések, ezt a képletet kell használni:

    =UNIQUE(A2:C10)

    Elképesztően egyszerű, nem igaz? :)

    Egyedi értékek listájának lekérdezése ábécé sorrendbe rendezve

    Hogyan szokás az Excelben ábécérendezni? Így van, a beépített Rendezés vagy Szűrés funkció segítségével. A probléma az, hogy minden alkalommal újra kell rendezni, amikor a forrásadatok változnak, mert az Excel képletekkel ellentétben, amelyek automatikusan újraszámítanak a munkalap minden egyes változásakor, a funkciókat manuálisan kell újra alkalmazni.

    A dinamikus tömbfüggvények bevezetésével ez a probléma megszűnt! Amit tennie kell, az az, hogy egyszerűen a SORT függvényt egy szabályos UNIQUE formula köré alakítja, például így:

    SORT(UNIQUE(array))

    Ha például az A-tól C-ig terjedő oszlopok egyedi értékeit szeretné kinyerni, és az eredményeket A-tól Z-ig rendezni, használja ezt a képletet:

    =SORT(UNIQUE(A2:C10))

    A fenti példához képest a kimenet sokkal könnyebben érzékelhető és sokkal könnyebb vele dolgozni. Például világosan láthatjuk, hogy Andrew és David két különböző sportágban is győztes volt.

    Tipp. Ebben a példában az 1. oszlopban az értékeket A-tól Z-ig rendeztük. Ezek a SORT függvény alapértelmezett értékei, ezért az opcionális sort_index és sort_order argumentumokat elhagyjuk. Ha az eredményeket más oszlopok szerint vagy más sorrendben (Z-től A-ig vagy a legnagyobbtól a legkisebbig) szeretnénk rendezni, akkor a 2. és 3. argumentumot a SORT függvény bemutatójában leírtak szerint adjuk meg.

    Egyedi értékek keresése több oszlopban és egy cellában történő összevonása

    Ha több oszlopban keres, az Excel UNIQUE funkciója alapértelmezés szerint minden egyes értéket külön cellában ad ki. Talán kényelmesebbnek találja, ha az eredményeket egyetlen cellában kapja meg?

    Ennek érdekében a teljes tartományra való hivatkozás helyett használjon az oszlopok összekapcsolására az erősítőjelet (&), és tegye közéjük a kívánt elválasztójelet.

    Példaként az A2:A10-ben szereplő keresztneveket és a B2:B10-ben szereplő vezetékneveket kapcsoljuk össze, az értékeket szóközzel (" ") elválasztva:

    =UNIQUE(A2:A10&" "&B2:B10)

    Ennek eredményeképpen egy oszlopban a teljes nevek listáját kapjuk:

    Egyedi értékek listájának lekérdezése a kritériumok alapján

    Az egyedi értékek feltételekkel történő kinyeréséhez használja az Excel UNIQUE és FILTER funkcióit együtt:

    • A FILTER funkció csak a feltételnek megfelelő értékekre korlátozza az adatokat.
    • Az UNIQUE funkció eltávolítja a duplikátumokat a szűrt listából.

    Íme a szűrt egyedi értékek képletének általános változata:

    UNIQUE(FILTER(array, criteria_range = kritériumok ))

    Ebben a példában egy adott sportág győzteseinek listáját kapjuk meg. Kezdetnek írjuk be az érdeklődésünkre számot tartó sportágat valamelyik cellába, mondjuk az F1-be. Majd az alábbi képlet segítségével kapjuk meg az egyedi neveket:

    =UNIQUE(FILTER(A2:B10, C2:C10=F1))

    Ahol A2:B10 az egyedi értékek keresésére szolgáló tartomány, C2:C10 pedig a kritériumok ellenőrzésére szolgáló tartomány.

    Egyedi értékek szűrése több kritérium alapján

    Az egyedi értékek szűréséhez két vagy több feltétellel, használja az alábbiakban bemutatott kifejezéseket a FILTER függvényhez szükséges feltételek megalkotásához:

    UNIQUE(FILTER(array, ( criteria_range1 = kritériumok1 ) * ( criteria_range2 = kritérium2 )))

    A képlet eredménye azon egyedi bejegyzések listája, amelyek esetében a megadott feltételek mindegyike IGAZ. Az Excelben ezt AND logikának nevezzük.

    Hogy lássuk a képletet működés közben, kapjunk egy listát a sportág egyedi győzteseiről a G1-ben (1. kritérium) és a G2-ben (2. kritérium).

    Ha a forrástartomány A2:B10, a sportok C2:C10 (criteria_range 1) és az életkorok D2:D10 (criteria_range 2), a képlet a következő formulát veszi fel:

    =UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10) * (D2:D10

    És pontosan a keresett eredményeket adja vissza:

    Hogyan működik ez a képlet:

    Íme a képlet logikájának magas szintű magyarázata:

    A tartalmazza a címet. A FILTER függvény argumentumában két vagy több tartomány/kritérium párost adunk meg. Minden logikai kifejezés eredménye egy TRUE és FALSE értékekből álló tömb. A tömbök szorzása a logikai értékeket számokká kényszeríti, és egy 1-es és 0-s tömböt eredményez. Mivel a nullával való szorzás mindig nullát ad, csak azok a bejegyzések, amelyek minden feltételnek megfelelnek, 1-es értéket tartalmaznak a végső tömbben. A FILTERfüggvény kiszűri a 0-nak megfelelő elemeket, és az eredményeket átadja az UNIQUE-nak.

    További információért lásd: FILTER több kritériummal ÉS logikával.

    Egyedi értékek szűrése több OR kritériummal

    Ha több VAGY kritérium alapján szeretné megkapni az egyedi értékek listáját, azaz ha ez VAGY az a kritérium IGAZ, akkor a logikai kifejezéseket összeadja ahelyett, hogy megszorozná őket:

    UNIQUE(FILTER(array, ( criteria_range1 = kritériumok1 ) + ( criteria_range2 = kritérium2 )))

    Például a győzteseket a következő kategóriákban lehet megjeleníteni Foci vagy Hoki , használhatja ezt a képletet:

    =UNIQUE(FILTER(A2:B10, (C2:C10="Foci") + (C2:C10="Hoki"))))

    Ha szükséges, természetesen a kritériumokat külön cellákba is beírhatja, és az alábbiakban látható módon hivatkozhat ezekre a cellákra:

    =UNIQUE(FILTER(A2:B10, (C2:C10=G1) + (C2:C10=G2)))

    Hogyan működik ez a képlet:

    Csakúgy, mint a többszörös ÉS feltételek tesztelésekor, több logikai kifejezést helyezünk el a tartalmazza a címet. argumentumát, amelyek mindegyike egy TRUE és FALSE értékekből álló tömböt ad vissza. Amikor ezeket a tömböket összeadjuk, azok az elemek, amelyeknél egy vagy több feltétel TRUE, 1-et kapnak, és azok az elemek, amelyeknél az összes feltétel FALSE, 0-t. Ennek eredményeképpen minden olyan bejegyzés, amely bármelyik feltételnek megfelel, bekerül az UNIQUE-nek átadott tömbbe.

    További információért lásd: FILTER több kritériummal, VAGY logika használatával.

    Egyedi értékek megszerzése az Excelben az üres részek figyelmen kívül hagyásával

    Ha olyan adatkészlettel dolgozik, amely tartalmaz némi hiányosságot, a hagyományos képlettel kapott egyedi listában valószínűleg lesz üres cella és/vagy nulla érték. Ez azért történik, mert az Excel UNIQUE funkciója úgy van kialakítva, hogy a tartományban lévő összes különálló értéket visszaadja, beleértve az üres cellákat is. Tehát, ha a forrástartomány nullákat és üres cellákat is tartalmaz, az egyedi lista 2 nullát fog tartalmazni, amelyek közül az egyik üres cellát jelent.Ezen kívül, ha a forrásadatok üres karakterláncokat tartalmaznak, amelyeket valamilyen képlet ad vissza, az uique lista tartalmazni fog egy üres karakterláncot ("") is, amely vizuálisan úgy néz ki, mint egy üres cella:

    Az egyedi értékek listájának üres részek nélküli listájához a következőt kell tennie:

    • Szűrje ki az üres cellákat és az üres karakterláncokat a FILTER funkcióval.
    • Használja az UNIQUE funkciót, hogy az eredményeket csak egyedi értékekre korlátozza.

    Általános formában a képlet a következőképpen néz ki:

    UNIQUE(FILTER( tartomány , tartomány ""))

    Ebben a példában a D2-ben lévő képlet a következő:

    =UNIQUE(FILTER(B2:B12, B2:B12"")))

    Ennek eredményeképpen az Excel az egyedi nevek listáját adja vissza üres cellák nélkül:

    Megjegyzés: Ha az eredeti adatok tartalmaznak nullák , egy nulla érték kerül az egyedi listába.

    Egyedi értékek keresése bizonyos oszlopokban

    Néha előfordulhat, hogy két vagy több, egymással nem szomszédos oszlopból szeretnénk egyedi értékeket kinyerni. Időnként az is előfordulhat, hogy a kapott listában az oszlopokat át szeretnénk rendezni. Mindkét feladatot a CHOOSE függvény segítségével teljesíthetjük.

    UNIQUE(CHOOSE({1,2,...}, range1 , range2 ))

    Tegyük fel, hogy a mintatáblázatunkból az A és C oszlopok értékei alapján szeretnénk a nyertesek listáját megkapni, és az eredményeket a következő sorrendbe rendezni: először egy sportág (C oszlop), majd egy sportoló neve (A oszlop). Ehhez a következő képletet állítjuk össze:

    =UNIQUE(CHOOSE({1,2}, C2:C10, A2:A10))

    És a következő eredményt kapjuk:

    Hogyan működik ez a képlet:

    A CHOOSE függvény a megadott oszlopok értékeinek 2 dimenziós tömbjét adja vissza. Esetünkben az oszlopok sorrendjét is felcseréli.

    {"Kosárlabda", "Andrew"; "Kosárlabda", "Betty"; "Röplabda", "David"; "Kosárlabda", "Andrew"; "Hoki", "Andrew"; "Foci", "Robert"; "Röplabda", "David"; "Hoki", "Andrew"; "Kosárlabda", "David"}

    A fenti tömbből az UNIQUE függvény az egyedi rekordok listáját adja vissza.

    Egyedi értékek keresése és hibakezelés

    A bemutatóban tárgyalt UNIQUE képletek tökéletesen működnek... feltéve, hogy van legalább egy érték, amely megfelel a megadott kritériumoknak. Ha a képlet nem talál semmit, akkor #CALC! hiba lép fel:

    Ennek megakadályozásához egyszerűen csomagolja a képletet az IFERROR függvénybe.

    Ha például nem talál a feltételeknek megfelelő egyedi értékeket, akkor nem jeleníthet meg semmit, azaz egy üres karakterláncot (""):

    =IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10) * (D2:D10

    Vagy egyértelműen tájékoztathatja a felhasználókat arról, hogy nem találtak találatot:

    =IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10) * (D2:D10

    Az Excel UNIQUE funkció nem működik

    Mint láthattad, az UNIQUE függvény megjelenése hihetetlenül megkönnyítette az egyedi értékek megtalálását az Excelben. Ha a képleted hirtelen hibát eredményez, az valószínűleg az alábbiak egyike.

    #NAME? hiba

    Akkor fordul elő, ha olyan Excel-verzióban használ UNIQUE képletet, ahol ez a funkció nem támogatott.

    Az UNIQUE funkció jelenleg csak az Excel 365 és 2021 programban érhető el. Ha más verzióval rendelkezik, megfelelő megoldást találhat ebben a bemutatóban: Hogyan kaphat egyedi értékeket az Excel 2019, Excel 2016 és korábbi programokban?

    A #NAME? hiba a támogatott verziókban azt jelzi, hogy a függvény neve rosszul van írva.

    #SPILL hiba

    Akkor fordul elő, ha a kiöntési tartomány egy vagy több cellája nem teljesen üres.

    A hiba kijavításához csak törölje vagy törölje a nem üres cellákat. Ha pontosan látni szeretné, hogy mely cellák vannak útban, kattintson a hiba jelzőre, majd kattintson a Akadályozó sejtek kiválasztása További információkért lásd: #SPILL! hiba az Excelben - okok és javítások.

    Így találhatsz egyedi értékeket az Excelben. Köszönöm, hogy elolvastad, és remélem, jövő héten találkozunk a blogon!

    Gyakorlati munkafüzet letölthető

    Excel egyedi értékek képlet példák (.xlsx fájl)

    Michael Brown elkötelezett technológiai rajongó, aki szenvedélyesen egyszerűsíti a bonyolult folyamatokat szoftvereszközök segítségével. A technológiai iparban szerzett több mint egy évtizedes tapasztalatával a Microsoft Excel és az Outlook, valamint a Google Táblázatok és a Dokumentumok területén fejlesztette tudását. Michael blogja célja, hogy megossza tudását és szakértelmét másokkal, könnyen követhető tippeket és oktatóanyagokat adva a termelékenység és a hatékonyság javításához. Akár tapasztalt szakember, akár kezdő, Michael blogja értékes betekintést és gyakorlati tanácsokat kínál, amelyek segítségével a legtöbbet hozhatja ki ezekből az alapvető szoftvereszközökből.