Sisällysluettelo
Ohjeessa tarkastellaan, miten Excelissä saadaan ainutlaatuisia arvoja käyttämällä UNIQUE-funktiota ja dynaamisia matriiseja. Opit yksinkertaisen kaavan, jolla voit löytää ainutlaatuisia arvoja sarakkeesta tai riviltä, useista sarakkeista, ehtojen perusteella ja paljon muuta.
Excelin aiemmissa versioissa yksilöllisten arvojen luettelon poimiminen oli vaikea haaste. Meillä on erityinen artikkeli, jossa näytetään, miten löytää vain kerran esiintyvät yksilölliset arvot, poimia luettelon kaikki erilliset kohteet, jättää tyhjät kohdat huomiotta ja paljon muuta. Jokainen tehtävä vaati useiden funktioiden ja monirivisen sarjakaavan yhdistettyä käyttöä, jonka vain Excel-gurut ymmärtävät täysin.
UNIQUE-toiminnon käyttöönotto Excel 365:ssä on muuttanut kaiken! Se, mikä ennen oli rakettitiedettä, muuttuu yhtä helpoksi kuin ABC. Nyt sinun ei tarvitse olla kaava-asiantuntija saadaksesi alueesta ainutlaatuisia arvoja yhden tai useamman kriteerin perusteella ja järjestelläksesi tulokset aakkosjärjestykseen. Kaikki tapahtuu yksinkertaisilla kaavoilla, joita jokainen voi lukea ja mukauttaa omiin tarpeisiinsa.
Excelin UNIQUE-toiminto
Excelin UNIQUE-toiminto palauttaa luettelon ainutlaatuisista arvoista alueelta tai joukosta. Se toimii minkä tahansa tietotyypin kanssa: teksti, numerot, päivämäärät, ajat jne.
Funktio on luokiteltu Dynaamiset array-toimintoihin. Tuloksena on dynaaminen array, joka valuu automaattisesti viereisiin soluihin pysty- tai vaakasuunnassa.
Excelin UNIQUE-funktion syntaksi on seuraava:
UNIQUE(array, [by_col], [exactly_once])Missä:
Array (pakollinen) - alue tai joukko, josta palautetaan yksilölliset arvot.
By_col (valinnainen) - looginen arvo, joka osoittaa, miten tietoja verrataan:
- TRUE - vertaa tietoja sarakkeiden välillä.
- FALSE tai jätetään pois (oletusarvo) - vertaa tietoja rivien välillä.
Exactly_once (valinnainen) - looginen arvo, joka määrittelee, mitä arvoja pidetään ainutlaatuisina:
- TRUE - palauttaa arvot, jotka esiintyvät vain kerran, mikä on tietokannan käsitys uniikista.
- FALSE tai jätetään pois (oletusarvo) - palauttaa kaikki erilliset (erilaiset) arvot alueella tai joukossa.
Huomautus: UNIQUE-toiminto on tällä hetkellä käytettävissä vain Excel for Microsoft 365:ssä ja Excel 2021:ssä. Excel 2019, 2016 ja aiemmat versiot eivät tue dynaamisia matriisikaavoja, joten UNIQUE-toiminto ei ole käytettävissä näissä versioissa.
Basic UNIQUE -kaava Excelissä
Alla on Excelin yksilöllisten arvojen kaava yksinkertaisimmassa muodossaan.
Tavoitteena on poimia luettelo yksilöllisistä nimistä alueelta B2:B10. Tätä varten kirjoitetaan seuraava kaava D2:een:
=UNIQUE(B2:B10)
Huomaa, että 2. ja 3. argumentit on jätetty pois, koska oletusarvot toimivat täydellisesti meidän tapauksessamme - vertaamme rivejä toisiinsa ja haluamme palauttaa kaikki eri nimet alueella.
Kun saat kaavan valmiiksi painamalla Enter-näppäintä, Excel tulostaa ensimmäisenä löytyneen nimen D2:een, jolloin muut nimet valuvat alla oleviin soluihin. Tuloksena on kaikki sarakkeessa olevat yksilölliset arvot:
Jos tietosi ovat sarakkeiden B2-I2 välillä, aseta 2. argumentin arvoksi TRUE, jotta voit verrata sarakkeita toisiinsa:
=UNIQUE(B2:I2,TRUE)
Kirjoita yllä oleva kaava kenttään B4, paina Enter , ja tulokset valuvat vaakasuoraan oikealla oleviin soluihin. Näin saat yksilölliset arvot riville:
Vihje. Jos haluat etsiä monisarakkeisista matriiseista ainutlaatuisia arvoja ja palauttaa ne yhdessä sarakkeessa tai rivillä, käytä UNIQUE-funktiota yhdessä TOCOL- tai TOROW-funktion kanssa, kuten alla olevissa esimerkeissä on esitetty:
- Yksilöllisten arvojen poimiminen usean sarakkeen alueesta sarakkeeseen
- Vedä yksilölliset arvot usean sarakkeen alueelta riville.
Excelin UNIQUE-toiminto - vinkkejä ja muistiinpanoja
UNIQUE on uusi funktio, ja kuten muillakin dynaamisilla array-funktioilla, sillä on muutamia erityispiirteitä, jotka sinun on hyvä tiedostaa:
- Jos UNIQUE:n palauttama matriisi on lopullinen tulos (eli sitä ei välitetä toiselle funktiolle), Excel luo dynaamisesti sopivan kokoisen alueen ja täyttää sen tuloksilla. Kaava tarvitsee syöttää vain kohtaan yksi solu On tärkeää, että sinulla on tarpeeksi tyhjiä soluja sen solun alapuolella ja/tai oikealla puolella, johon kirjoitat kaavan, muuten syntyy #SPILL-virhe.
- Tulokset päivittyy automaattisesti kun lähdetiedot muuttuvat. Viitatun joukon ulkopuolelle lisättyjä uusia merkintöjä ei kuitenkaan oteta mukaan kaavaan, ellet muuta asetusta array Jos haluat, että array reagoida lähdealueen koon muuttamiseen automaattisesti, muuntaa alueen Excel-taulukoksi ja käyttää rakenteellisia viittauksia tai luoda dynaaminen nimetty alue.
- Eri Excel-tiedostojen väliset dynaamiset taulukot toimivat vain, kun molemmat työkirjat ovat auki Jos lähdetyökirja suljetaan, linkitetty UNIQUE-kaava palauttaa #REF! -virheen.
- Muiden dynaamisten array-funktioiden tavoin UNIQUE-funktiota voidaan käyttää vain normaalissa alue Excel-taulukoiden sisällä se palauttaa #SPILL! -virheen.
Miten löytää ainutlaatuisia arvoja Excelissä - kaavaesimerkkejä
Alla olevissa esimerkeissä esitellään joitakin UNIQUE-funktion käytännön käyttötapoja Excelissä. Pääajatuksena on poimia ainutlaatuisia arvoja tai poistaa päällekkäisyyksiä mahdollisimman yksinkertaisella tavalla, riippuen näkökulmasta.
Poimi ainutlaatuiset arvot, jotka esiintyvät vain kerran
Jos haluat saada luettelon arvoista, jotka esiintyvät määritetyllä alueella täsmälleen kerran, aseta UNIQUE-kohdan kolmanneksi argumentiksi TRUE.
Voit esimerkiksi vetää voittajalistalla olevat nimet yhdellä kertaa käyttämällä tätä kaavaa:
=UNIQUE(B2:B10,,TRUE)
Jossa B2:B10 on lähdealue ja toinen argumentti ( by_col ) on FALSE tai jätetään pois, koska tietomme on järjestetty riveihin.
Etsitään erilliset arvot, jotka esiintyvät useammin kuin kerran
Jos sinulla on päinvastainen tavoite, eli haluat saada luettelon arvoista, jotka esiintyvät tietyllä alueella useammin kuin kerran, käytä UNIQUE-funktiota yhdessä FILTERin ja COUNTIFin kanssa:
UNIQUE(FILTER( alue , COUNTIF( alue , alue )>1))Jos haluat esimerkiksi poimia eri nimet, jotka esiintyvät B2:B10-kohdassa useammin kuin kerran, voit käyttää tätä kaavaa:
=UNIQUE(FILTER(B2:B10, COUNTIF(B2:B10, B2:B10)>1)))
Miten tämä kaava toimii:
Kaavan ytimessä FILTER-funktio suodattaa päällekkäiset merkinnät COUNTIF-funktion palauttaman esiintymien lukumäärän perusteella. Meidän tapauksessamme COUNTIF-funktion tulos on tämä laskentatietojoukko:
{4;1;3;4;4;1;3;4;3}
Vertailuoperaatio (>1) muuttaa yllä olevan joukon TRUE- ja FALSE-arvoiksi, joissa TRUE edustaa kohteita, jotka esiintyvät useammin kuin kerran:
{TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE}
Tämä joukko luovutetaan FILTERille parametrina sisällyttää argumentti, joka kertoo funktiolle, mitkä arvot sisällytetään tuloksena olevaan joukkoon:
{"Andrew"; "David"; "Andrew"; "Andrew"; "David"; "Andrew"; "David"}
Kuten huomaat, vain arvot, jotka vastaavat arvoa TRUE, säilyvät.
Yllä oleva joukko menee array argumentti UNIQUE, ja kun kaksoiskappaleet on poistettu, se antaa lopullisen tuloksen:
{"Andrew"; "David"}
Vihje. Samalla tavalla voit suodattaa yksilölliset arvot, jotka esiintyvät useammin kuin kaksi kertaa (>2), useammin kuin kolme kertaa (>3) jne. Tätä varten vaihda vain loogisen vertailun numeroa.
Etsiä ainutlaatuisia arvoja useista sarakkeista (ainutlaatuiset rivit)
Jos haluat verrata kahta tai useampaa saraketta ja palauttaa niiden väliset yksilölliset arvot, sisällytä kaikki kohdesarakkeet komentoon array argumentti.
Jos esimerkiksi haluamme palauttaa voittajien yksilölliset etunimet (sarake A) ja sukunimet (sarake B), syötämme tämän kaavan E2:een:
=UNIQUE(A2:B10)
Enter-näppäimen painaminen antaa seuraavat tulokset:
Saadaksesi yksilölliset rivit , eli merkinnät, joissa on sarakkeiden A, B ja C arvojen yksilöllinen yhdistelmä, on käytettävä tätä kaavaa:
=UNIQUE(A2:C10)
Hämmästyttävän yksinkertaista, eikö olekin? :)
Hae luettelo yksilöllisistä arvoista aakkosjärjestykseen lajiteltuna.
Miten Excelissä yleensä aakkostetaan? Aivan, käyttämällä sisäänrakennettua lajittelu- tai suodatusominaisuutta. Ongelmana on se, että sinun on lajiteltava uudelleen aina, kun lähdetiedot muuttuvat, sillä toisin kuin Excelin kaavat, jotka lasketaan automaattisesti uudelleen jokaisen työarkin muutoksen yhteydessä, ominaisuudet on sovellettava uudelleen manuaalisesti.
Dynaamisten array-funktioiden käyttöönoton myötä tämä ongelma on poistunut! Sinun tarvitsee vain kiertää SORT-funktio tavallisen UNIQUE-kaavan ympärille, esimerkiksi näin:
SORT(UNIQUE(array))Jos haluat esimerkiksi poimia sarakkeiden A-C yksilölliset arvot ja järjestää tulokset A:sta Z:hen, käytä tätä kaavaa:
=SORT(UNIQUE(A2:C10))
Edellä olevaan esimerkkiin verrattuna tulosta on paljon helpompi hahmottaa ja käsitellä. Näemme esimerkiksi selvästi, että Andrew ja David ovat olleet voittajia kahdessa eri urheilulajissa.
Vihje. Tässä esimerkissä lajittelimme 1. sarakkeen arvot A:sta Z:hen. Nämä ovat SORT-funktion oletusarvoja, joten valinnainen lisäys sort_index ja sort_order argumentit jätetään pois. Jos haluat lajitella tulokset jonkin muun sarakkeen mukaan tai eri järjestyksessä (Z:stä A:han tai suurimmasta pienimpään), aseta 2. ja 3. argumentti kuten SORT-funktion opetusohjelmassa selitetään.
Etsitään yksilölliset arvot useista sarakkeista ja yhdistetään yhteen soluun.
Kun etsit useista sarakkeista, Excelin UNIQUE-toiminto antaa oletusarvoisesti jokaisen arvon erilliseen soluun. Ehkä sinun on kätevämpää saada tulokset yhteen soluun?
Tämän saavuttamiseksi voit käyttää koko alueeseen viittaamisen sijasta ampersandia (&) sarakkeiden yhdistämiseen ja halutun rajaimen asettamiseen sarakkeiden väliin.
Esimerkkinä on, että yhdistämme etunimet A2:A10 ja sukunimet B2:B10 ja erotamme arvot välilyönnillä (" "):
=UNIQUE(A2:A10&" "&B2:B10)
Tuloksena meillä on luettelo täydellisistä nimistä yhdessä sarakkeessa:
Hae luettelo kriteereihin perustuvista yksilöllisistä arvoista
Jos haluat poimia ainutlaatuisia arvoja ehdon avulla, käytä Excelin UNIQUE- ja FILTER-toimintoja yhdessä:
- FILTER-toiminto rajoittaa tiedot vain arvoihin, jotka täyttävät ehdon.
- UNIQUE-toiminto poistaa kaksoiskappaleet suodatetusta luettelosta.
Tässä on suodatettujen yksilöllisten arvojen kaavan yleinen versio:
UNIQUE(FILTER(array, criteria_range = kriteerit ))Tässä esimerkissä haetaan luettelo tietyn urheilulajin voittajista. Syötetään ensin kiinnostava urheilulaji johonkin soluun, esimerkiksi F1. Sitten käytetään alla olevaa kaavaa yksilöllisten nimien saamiseksi:
=UNIQUE(FILTER(A2:B10, C2:C10=F1))
Jossa A2:B10 on alue, josta etsitään yksilöllisiä arvoja, ja C2:C10 on alue, josta tarkistetaan kriteerit.
Suodata ainutlaatuisia arvoja useiden kriteerien perusteella
Jos haluat suodattaa yksilöllisiä arvoja kahdella tai useammalla ehdolla, käytä alla esitettyjä lausekkeita rakentaaksesi FILTER-toiminnon tarvitsemat kriteerit:
UNIQUE(FILTER(array, ( kriteerit_alue1 = kriteerit1 ) * ( kriteerit_alue2 = kriteerit2 )))Kaavan tuloksena on luettelo ainutkertaisista merkinnöistä, joiden osalta kaikki määritetyt ehdot ovat TODELLISIA. Excelissä tätä kutsutaan AND-logiikaksi.
Jotta kaava näkyisi toiminnassa, laaditaan luettelo ainutlaatuisista voittajista lajissa G1 (kriteeri 1) ja alle iässä G2 (kriteeri 2).
Kun lähdealue on A2:B10, urheilulajit C2:C10 (kriteeri_alue 1) ja iät D2:D10 (kriteeri_alue 2), kaava on seuraavanlainen:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Ja palauttaa juuri ne tulokset, joita etsimme:
Miten tämä kaava toimii:
Tässä on korkean tason selitys kaavan logiikasta:
Vuonna sisällyttää FILTER-funktion argumentissa annat kaksi tai useampia alue/kriteeripareja. Kunkin loogisen lausekkeen tuloksena on joukko TRUE- ja FALSE-arvoja. Joukkojen kertominen pakottaa loogiset arvot numeroiksi ja tuottaa joukon 1:iä ja 0:ita. Koska kertominen nollalla antaa aina nollan, vain ne merkinnät, jotka täyttävät kaikki ehdot, saavat lopullisessa joukossaan arvon 1. FILTER-funktio FILTERfunktio suodattaa 0:ta vastaavat kohteet pois ja luovuttaa tulokset UNIQUE:lle.
Lisätietoja on kohdassa SUODATIN useilla kriteereillä AND-logiikan avulla.
Suodata ainutlaatuisia arvoja useilla OR-kriteereillä
Jos haluat saada luettelon ainutlaatuisista arvoista, jotka perustuvat useisiin TAI-kriteereihin, eli kun tämä TAI tuo kriteeri on TODELLINEN, lisää loogiset lausekkeet sen sijaan, että kertoisit ne:
UNIQUE(FILTER(array, ( kriteerit_alue1 = kriteerit1 ) + ( kriteerit_alue2 = kriteerit2 )))Voit esimerkiksi näyttää voittajat joko seuraavissa lajeissa Jalkapallo tai Jääkiekko voit käyttää tätä kaavaa:
=UNIQUE(FILTER(A2:B10, (C2:C10="Jalkapallo") + (C2:C10="Jääkiekko"))))
Tarvittaessa voit tietysti syöttää kriteerit erillisiin soluihin ja viitata niihin, kuten alla on esitetty:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) + (C2:C10=G2))))
Miten tämä kaava toimii:
Aivan kuten testattaessa useita AND-kriteerejä, asetat useita loogisia lausekkeita kenttään sisällyttää FILTER-funktion argumenttia, joista kukin palauttaa TRUE- ja FALSE-arvojen joukon. Kun nämä joukot lasketaan yhteen, kohteet, joiden osalta yksi tai useampi kriteeri on TRUE, saavat arvon 1, ja kohteet, joiden osalta kaikki kriteerit ovat FALSE, saavat arvon 0. Tuloksena kaikki kohteet, jotka täyttävät minkä tahansa yksittäisen ehdon, päätyvät UNIQUE:lle luovutettavaan joukkoon.
Lisätietoja on kohdassa FILTER with multiple criteria using OR logic.
Hanki yksilölliset arvot Excelissä jättämällä tyhjät kohdat huomiotta
Jos työskentelet tietokokonaisuuden kanssa, jossa on aukkoja, tavallisella kaavalla saadussa uniikkiluettelossa on todennäköisesti tyhjä solu ja/tai nolla-arvo. Näin tapahtuu, koska Excelin UNIQUE-toiminto on suunniteltu palauttamaan kaikki alueen erilliset arvot, myös tyhjät. Jos siis lähdealueellasi on sekä nollia että tyhjiä soluja, uniikkiluettelo sisältää kaksi nollaa, joista toinen edustaa tyhjää.Lisäksi jos lähdetiedot sisältävät tyhjiä merkkijonoja, jotka jokin kaava palauttaa, uique-luettelo sisältää myös tyhjän merkkijonon (""), joka näyttää visuaalisesti tyhjältä solulta:
Jos haluat saada luettelon yksilöllisistä arvoista ilman tyhjiä, sinun on tehtävä näin:
- Suodata tyhjät solut ja tyhjät merkkijonot pois käyttämällä FILTER-toimintoa.
- Käytä UNIQUE-toimintoa rajoittaaksesi tulokset vain ainutlaatuisiin arvoihin.
Yleisessä muodossa kaava näyttää seuraavalta:
UNIQUE(FILTER( alue , alue ""))Tässä esimerkissä kaava D2:ssa on:
=UNIQUE(FILTER(B2:B12, B2:B12"")))
Tuloksena Excel palauttaa luettelon yksilöllisistä nimistä ilman tyhjiä soluja:
Huomautus: Jos alkuperäiset tiedot sisältävät nollat , yksi nolla-arvo sisällytetään yksilölliseen luetteloon.
Yksilöllisten arvojen etsiminen tietyistä sarakkeista
Joskus saatat haluta poimia yksilöllisiä arvoja kahdesta tai useammasta sarakkeesta, jotka eivät ole vierekkäin. Toisinaan saatat myös haluta järjestää sarakkeet uudelleen tuloksena olevassa luettelossa. Molemmat tehtävät voidaan suorittaa CHOOSE-funktion avulla.
UNIQUE(CHOOSE({1,2,...}, range1 , range2 ))Oletetaan, että esimerkkitaulukostamme halutaan saada lista voittajista sarakkeiden A ja C arvojen perusteella ja järjestää tulokset tässä järjestyksessä: ensin urheilulaji (sarake C) ja sitten urheilijan nimi (sarake A). Tätä varten laaditaan tämä kaava:
=UNIQUE(CHOOSE({1,2}, C2:C10, A2:A10))
Ja saat seuraavan tuloksen:
Miten tämä kaava toimii:
CHOOSE-funktio palauttaa 2-ulotteisen arvomäärän määritetyistä sarakkeista. Meidän tapauksessamme se myös vaihtaa sarakkeiden järjestyksen.
{"Koripallo", "Andrew"; "Koripallo", "Betty"; "Lentopallo", "David"; "Koripallo", "Andrew"; "Jääkiekko", "Andrew"; "Jalkapallo", "Robert"; "Lentopallo", "David"; "Jääkiekko", "Andrew"; "Jääkiekko", "David"}
UNIQUE-funktio palauttaa yllä olevasta matriisista luettelon ainutlaatuisista tietueista.
Yksilöllisten arvojen etsiminen ja virheiden käsittely
UNIQUE-kaavat, joita olemme käsitelleet tässä oppaassa, toimivat täydellisesti... edellyttäen, että on olemassa vähintään yksi arvo, joka täyttää määritetyt kriteerit. Jos kaava ei löydä mitään, tapahtuu #CALC! -virhe:
Voit estää tämän tapahtumasta yksinkertaisesti kietomalla kaavan IFERROR-funktioon.
Jos esimerkiksi yhtään kriteerit täyttävää arvoa ei löydy, voit näyttää tyhjän merkkijonon (""):
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Tai voit ilmoittaa käyttäjille selkeästi, että tuloksia ei ole löytynyt:
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Excel UNIQUE -toiminto ei toimi
Kuten olet nähnyt, UNIQUE-funktion käyttöönotto on tehnyt ainutlaatuisten arvojen löytämisestä Excelissä uskomattoman helppoa. Jos kaava yhtäkkiä tuottaa virheen, se johtuu todennäköisesti jostakin seuraavista.
#NAME? virhe
Tapahtuu, jos käytät UNIQUE-kaavaa Excel-versiossa, jossa tätä toimintoa ei tueta.
Tällä hetkellä UNIQUE-toiminto on käytettävissä vain Excel 365:ssä ja 2021:ssä. Jos käytössäsi on jokin muu versio, voit löytää sopivan ratkaisun tästä opetusohjelmasta: Miten saat yksilöllisiä arvoja Excel 2019:ssä, Excel 2016:ssa ja aiemmissa versioissa.
Tuetuissa versioissa #NAME? -virhe osoittaa, että funktion nimi on kirjoitettu väärin.
#SPILL-virhe
Esiintyy, jos yksi tai useampi solu valuma-alueella ei ole täysin tyhjä.
Voit korjata virheen tyhjentämällä tai poistamalla ei-tyhjiä soluja. Jos haluat nähdä tarkalleen, mitkä solut ovat tiellä, napsauta virheilmaisinta ja valitse sitten Valitse estävät solut Lisätietoja on kohdassa #SPILL! virhe Excelissä - syyt ja korjaukset.
Näin löydät ainutlaatuiset arvot Excelissä. Kiitän sinua lukemisesta ja toivottavasti tapaamme blogissamme ensi viikolla!
Käytännön työkirja ladattavissa
Excelin ainutlaatuisten arvojen kaavaesimerkkejä (.xlsx-tiedosto)