Funkcja Excel UNIQUE - najszybszy sposób na znalezienie unikalnych wartości

  • Udostępnij To
Michael Brown

W tym tutorialu przyjrzymy się, jak uzyskać unikalne wartości w Excelu za pomocą funkcji UNIQUE i tablic dynamicznych. Poznasz prostą formułę, aby znaleźć unikalne wartości w kolumnie lub wierszu, w wielu kolumnach, na podstawie warunków i wiele więcej.

W poprzednich wersjach Excela wyodrębnienie listy unikalnych wartości było trudnym wyzwaniem. Mamy specjalny artykuł, w którym pokazujemy, jak znaleźć unikaty występujące tylko raz, wyodrębnić wszystkie odrębne pozycje na liście, zignorować puste miejsca i wiele innych. Każde zadanie wymagało łącznego użycia kilku funkcji i wieloliniowej formuły tablicowej, którą w pełni mogą zrozumieć tylko guru Excela.

Wprowadzenie funkcji UNIKAT w Excelu 365 zmieniło wszystko! To, co kiedyś było nauką o rakietach, staje się proste jak ABC. Teraz nie trzeba być ekspertem od formuł, aby uzyskać unikalne wartości z zakresu, na podstawie jednego lub wielu kryteriów, i ułożyć wyniki w porządku alfabetycznym. Wszystko odbywa się za pomocą prostych formuł, które każdy może odczytać i dostosować do własnych potrzeb.

    Funkcja UNIQUE w programie Excel

    Funkcja UNIQUE w Excelu zwraca listę unikalnych wartości z zakresu lub tablicy. Działa z każdym typem danych: tekstem, liczbami, datami, czasem itp.

    Funkcja jest skategoryzowana w ramach funkcji Dynamic Arrays. W rezultacie otrzymujemy dynamiczną tablicę, która automatycznie rozlewa się na sąsiednie komórki w pionie lub poziomie.

    Składnia funkcji UNIQUE w Excelu jest następująca:

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

    Gdzie:

    Array (wymagane) - zakres lub tablica, z której mają być zwracane unikalne wartości.

    Przez_col (opcjonalnie) - wartość logiczna określająca sposób porównania danych:

    • TRUE - porównuje dane w poszczególnych kolumnach.
    • FALSE lub pominięty (domyślnie) - porównuje dane w poszczególnych wierszach.

    Dokładnie_jeden raz (opcjonalnie) - wartość logiczna określająca, jakie wartości są uznawane za unikalne:

    • TRUE - zwraca wartości, które występują tylko raz, co jest bazodanowym pojęciem unikalności.
    • FALSE lub pominięty (domyślnie) - zwraca wszystkie odrębne (różne) wartości w zakresie lub tablicy.

    Uwaga. Obecnie funkcja UNIQUE jest dostępna tylko w programie Excel dla Microsoft 365 i Excel 2021. Excel 2019, 2016 i wcześniejsze nie obsługują dynamicznych formuł tablicowych, więc funkcja UNIQUE nie jest dostępna w tych wersjach.

    Podstawowa formuła UNIQUE w programie Excel

    Poniżej znajduje się formuła wartości unikalnych Excela w najprostszej postaci.

    Celem jest wyodrębnienie listy unikalnych nazw z zakresu B2:B10. W tym celu w D2 wpisujemy następującą formułę:

    =UNIQUE(B2:B10)

    Zauważ, że 2 i 3 argument są pominięte, ponieważ domyślne działają idealnie w naszym przypadku - porównujemy wiersze względem siebie i chcemy zwrócić wszystkie różne nazwy w zakresie.

    Kiedy naciśniesz klawisz Enter, aby zakończyć formułę, Excel wyprowadzi pierwszą znalezioną nazwę w D2 rozlewając pozostałe nazwy do komórek poniżej. W rezultacie masz wszystkie unikalne wartości w kolumnie:

    W przypadku, gdy twoje dane są w kolumnach od B2 do I2, ustaw drugi argument na TRUE, aby porównać kolumny ze sobą:

    =UNIQUE(B2:I2,TRUE)

    Wpisz powyższą formułę w B4, naciśnij Enter , a wyniki rozleją się poziomo do komórek po prawej stronie. W ten sposób otrzymasz unikalne wartości w rzędzie:

    Porada Aby znaleźć unikalne wartości w tablicach wielokolumnowych i zwrócić je w jednej kolumnie lub wierszu, użyj UNIQUE wraz z funkcją TOCOL lub TOROW, jak pokazano w poniższych przykładach:

    • Wyodrębnij unikalne wartości z zakresu wielokolumnowego do kolumny
    • Wyciągnij unikalne wartości z zakresu wielu kolumn do wiersza

    Funkcja UNIQUE w Excelu - wskazówki i uwagi

    UNIQUE jest nową funkcją i podobnie jak inne funkcje tablic dynamicznych ma kilka cech szczególnych, o których powinieneś wiedzieć:

    • Jeśli tablica zwrócona przez UNIQUE jest wynikiem końcowym (czyli nie jest przekazywana do innej funkcji), Excel dynamicznie tworzy odpowiedniej wielkości zakres i wypełnia go wynikami. Formuła musi być wpisana tylko w jedna komórka Ważne jest, abyś miał wystarczająco dużo pustych komórek w dół i/lub na prawo od komórki, w której wprowadzasz formułę, w przeciwnym razie pojawi się błąd #SPILL.
    • Wyniki aktualizować się automatycznie przy zmianie danych źródłowych. Jednak nowe wpisy, które są dodawane poza tablicą referencyjną, nie są uwzględniane w formule, chyba że zmienisz opcję macierz Jeśli chcesz, aby macierz aby automatycznie reagować na zmianę rozmiaru zakresu źródłowego, a następnie przekonwertować zakres na tabelę Excela i użyć strukturalnych odniesień lub utworzyć dynamiczny zakres nazwany.
    • Dynamiczne tablice pomiędzy różnymi plikami Excela działają tylko wtedy, gdy oba skoroszyty są otwarte Jeśli źródłowy skoroszyt jest zamknięty, połączona formuła UNIQUE zwróci błąd #REF!
    • Podobnie jak inne funkcje tablic dynamicznych, UNIQUE może być używane tylko w obrębie normalnej tablicy zakres , a nie tabelą. Po umieszczeniu w tabelach Excela zwraca błąd #SPILL!

    Jak znaleźć unikalne wartości w Excelu - przykłady formuł

    Poniższe przykłady pokazują kilka praktycznych zastosowań funkcji UNIQUE w Excelu. Główną ideą jest wydobycie unikalnych wartości lub usunięcie duplikatów, w zależności od punktu widzenia, w najprostszy możliwy sposób.

    Wyodrębnij unikalne wartości, które występują tylko raz

    Aby uzyskać listę wartości, które pojawiają się w określonym zakresie dokładnie raz, ustaw 3 argument UNIQUE na TRUE.

    Na przykład, aby wyciągnąć nazwiska, które są na liście zwycięzców jeden raz, użyj tego wzoru:

    =UNIQUE(B2:B10,,TRUE)

    Gdzie B2:B10 jest zakresem źródła, a drugi argument ( przez_kol ) jest FAŁSZYWA lub pominięta, ponieważ nasze dane są zorganizowane w rzędach.

    Znajdź różne wartości, które występują więcej niż raz

    Jeśli dążysz do odwrotnego celu, czyli chcesz uzyskać listę wartości, które pojawiają się w danym zakresie więcej niż jeden raz, to użyj funkcji UNIQUE wraz z FILTER i COUNTIF:

    UNIQUE(FILTER( zakres , COUNTIF( zakres , zakres )>1))

    Na przykład, aby wyodrębnić różne nazwy, które występują w B2:B10 więcej niż raz, możesz użyć tej formuły:

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

    Jak działa ta formuła:

    W sercu formuły, funkcja FILTER odfiltrowuje zduplikowane wpisy na podstawie liczby wystąpień, zwróconej przez funkcję COUNTIF. W naszym przypadku wynikiem COUNTIF jest ta tablica zliczeń:

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

    Operacja porównania (>1) zmienia powyższą tablicę na wartości TRUE i FALSE, gdzie TRUE reprezentuje elementy, które pojawiają się więcej niż raz:

    {TRUE;FALSE;TRUE;TRUE;FALSE;FALSE;TRUE;TRUE}

    Ta tablica jest przekazywana do FILTER jako włącz argument, mówiący funkcji, które wartości mają być zawarte w wynikowej tablicy:

    {"Andrzej"; "Dawid"; "Andrzej"; "Dawid"; "Andrzej"; "Dawid"; "Andrzej"; "Dawid" }

    Jak można zauważyć, przeżywają tylko wartości odpowiadające TRUE.

    Powyższa tablica trafia do macierz argument UNIQUE, a po usunięciu duplikatów wypisuje wynik końcowy:

    {"Andrzej"; "Dawid"}

    Wskazówka. W podobny sposób można filtrować wartości unikalne, które występują więcej niż dwa razy (>2), więcej niż trzy razy (>3) itd. W tym celu wystarczy zmienić liczbę w porównaniu logicznym.

    Znajdź unikalne wartości w wielu kolumnach (unikalne wiersze)

    W sytuacji, gdy chcesz porównać dwie lub więcej kolumn i zwrócić unikalne wartości pomiędzy nimi, dołącz wszystkie kolumny docelowe do macierz argument.

    Na przykład, aby zwrócić unikalne Imię (kolumna A) i Nazwisko (kolumna B) zwycięzców, wpisujemy w E2 taką formułę:

    =UNIQUE(A2:B10)

    Naciśnięcie klawisza Enter daje następujące wyniki:

    Aby uzyskać unikalne rzędy , czyli wpisy z unikalną kombinacją wartości w kolumnach A, B i C, to jest formuła, której należy użyć:

    =UNIQUE(A2:C10)

    Zadziwiająco proste, nieprawdaż :)

    Uzyskaj listę unikalnych wartości posortowanych w porządku alfabetycznym

    Jak zwykle alfabetyzujesz w Excelu? Właśnie, używając wbudowanej funkcji Sortowanie lub Filtr. Problem polega na tym, że musisz ponownie sortować za każdym razem, gdy zmieniają się dane źródłowe, ponieważ w przeciwieństwie do formuł Excela, które przeliczają się automatycznie przy każdej zmianie w arkuszu, funkcje muszą być ponownie zastosowane ręcznie.

    Dzięki wprowadzeniu dynamicznych funkcji tablicowych ten problem zniknął! To, co musisz zrobić, to po prostu wypaczenie funkcji SORT wokół zwykłej formuły UNIQUE, jak to:

    SORT(UNIQUE(tablica))

    Na przykład, aby wyodrębnić unikalne wartości w kolumnach od A do C i ułożyć wyniki od A do Z, użyj tej formuły:

    =SORT(UNIQUE(A2:C10))

    W porównaniu do powyższego przykładu, dane wyjściowe są o wiele łatwiejsze do postrzegania i pracy z nimi. Na przykład, możemy wyraźnie zobaczyć, że Andrew i David zostali zwycięzcami w dwóch różnych sportach.

    Wskazówka. W tym przykładzie posortowaliśmy wartości w pierwszej kolumnie od A do Z. Są to wartości domyślne funkcji SORT, dlatego opcjonalne sort_index oraz sortowanie_order Jeśli chcesz posortować wyniki według innej kolumny lub w innym porządku (od Z do A lub od największego do najmniejszego) ustaw drugi i trzeci argument, jak wyjaśniono w tutorialu funkcji SORT.

    Znajdź unikalne wartości w wielu kolumnach i połącz je w jedną komórkę

    Podczas wyszukiwania w wielu kolumnach, domyślnie funkcja Excel UNIQUE wyprowadza każdą wartość w osobnej komórce. Być może, wygodniej będzie Ci mieć wyniki w jednej komórce?

    Aby to osiągnąć, zamiast odwoływać się do całego zakresu, użyj ampersanda (&), aby konkatenować kolumny i umieścić między nimi pożądany delimiter.

    Jako przykład, konkatenujemy imiona z A2:A10 i nazwiska z B2:B10, oddzielając wartości znakiem spacji (" "):

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

    W efekcie mamy listę pełnych nazwisk w jednej kolumnie:

    Uzyskaj listę unikalnych wartości na podstawie kryteriów

    Aby wyodrębnić unikalne wartości z warunkiem, należy użyć funkcji Excel UNIQUE i FILTER razem:

    • Funkcja FILTER ogranicza dane tylko do wartości spełniających dany warunek.
    • Funkcja UNIQUE usuwa duplikaty z filtrowanej listy.

    Oto ogólna wersja formuły filtrowanych wartości unikalnych:

    UNIQUE(FILTER(array, kryteria_zakresu = kryteria ))

    Dla tego przykładu, uzyskajmy listę zwycięzców w konkretnym sporcie. Na początek wprowadzamy interesujący nas sport w jakiejś komórce, powiedzmy F1. A następnie użyj poniższej formuły, aby uzyskać unikalne nazwy:

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

    Gdzie A2:B10 to zakres do wyszukiwania unikalnych wartości, a C2:C10 to zakres do sprawdzania kryteriów.

    Filtrowanie unikalnych wartości na podstawie wielu kryteriów

    Aby filtrować unikalne wartości z dwoma lub więcej warunkami, użyj wyrażeń jak pokazano poniżej, aby skonstruować wymagane kryteria dla funkcji FILTER:

    UNIQUE(FILTER(array, ( kryteria_zakresu1 = kryteria1 ) * ( kryteria_zakresu2 = kryteria2 )))

    Wynikiem działania formuły jest lista unikalnych wpisów, dla których wszystkie określone warunki są TRUE. W kategoriach Excela nazywa się to logiką AND.

    Aby zobaczyć formułę w działaniu, uzyskajmy listę unikalnych zwycięzców dla sportu w G1 (kryteria 1) i poniżej wieku w G2 (kryteria 2).

    Mając zakres źródłowy w A2:B10, sporty w C2:C10 (kryteria_zakresu 1) i wiek w D2:D10 (kryteria_zakresu 2), formuła przyjmuje taką postać:

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

    I zwraca dokładnie takie wyniki, jakich szukamy:

    Jak działa ta formuła:

    Oto wysokopoziomowe wyjaśnienie logiki formuły:

    W włącz argumentem funkcji FILTER, podajesz dwie lub więcej par zakres/kryterium. Wynikiem każdego wyrażenia logicznego jest tablica wartości TRUE i FALSE. Mnożenie tablic powoduje, że wartości logiczne stają się liczbami i powstaje tablica 1 i 0. Ponieważ mnożenie przez zero zawsze daje zero, tylko pozycje spełniające wszystkie warunki mają 1 w końcowej tablicy. Funkcja FILTERFunkcja odfiltrowuje elementy odpowiadające 0 i przekazuje wyniki do UNIQUE.

    Aby uzyskać więcej informacji, zobacz FILTR z wieloma kryteriami przy użyciu logiki AND.

    Filtrowanie unikalnych wartości za pomocą wielu kryteriów OR

    Aby uzyskać listę unikalnych wartości na podstawie wielu kryteriów OR, tj. Gdy to LUB to kryterium jest TRUE, dodaj wyrażenia logiczne zamiast ich mnożenia:

    UNIQUE(FILTER(array, ( kryteria_zakresu1 = kryteria1 ) + ( kryteria_zakresu2 = kryteria2 )))

    Na przykład, aby pokazać zwycięzców w Piłka nożna lub Hokej , można skorzystać z tego wzoru:

    =UNIQUE(FILTER(A2:B10, (C2:C10="Piłka nożna") + (C2:C10="Hokej")))

    W razie potrzeby można oczywiście wpisać kryteria w osobnych komórkach i odwoływać się do tych komórek jak pokazano poniżej:

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

    Jak działa ta formuła:

    Podobnie jak przy testowaniu wielu kryteriów AND, umieszczasz kilka wyrażeń logicznych w włącz argument funkcji FILTER, z których każdy zwraca tablicę wartości TRUE i FALSE. Po zsumowaniu tych tablic elementy, dla których jedno lub więcej kryteriów jest TRUE będą miały wartość 1, a elementy, dla których wszystkie kryteria są FALSE będą miały wartość 0. W rezultacie każdy wpis spełniający dowolny warunek trafia do tablicy przekazywanej do UNIQUE.

    Aby uzyskać więcej informacji, zobacz FILTR z wieloma kryteriami przy użyciu logiki OR.

    Uzyskaj unikalne wartości w programie Excel ignorując puste miejsca

    Jeśli pracujesz z zestawem danych, który zawiera luki, lista unikatów uzyskanych za pomocą zwykłej formuły prawdopodobnie będzie miała pustą komórkę i/lub wartość zerową. Dzieje się tak, ponieważ funkcja UNIKAT w Excelu jest zaprojektowana tak, aby zwracać wszystkie różne wartości w zakresie, w tym puste komórki. Tak więc, jeśli twój zakres źródłowy ma zarówno zera, jak i puste komórki, lista unikatów będzie zawierała 2 zera, jedno reprezentujące puste komórkiDodatkowo, jeśli dane źródłowe zawierają puste ciągi zwracane przez jakąś formułę, na liście uique znajdzie się również pusty ciąg (""), który wizualnie wygląda jak pusta komórka:

    Aby uzyskać listę unikalnych wartości bez pustych miejsc, oto co musisz zrobić:

    • Odfiltruj puste komórki i puste ciągi znaków za pomocą funkcji FILTRUJ.
    • Użyj funkcji UNIQUE, aby ograniczyć wyniki tylko do unikalnych wartości.

    W ogólnej formie formuła ta wygląda następująco:

    UNIQUE(FILTER( zakres , zakres ""))

    W tym przykładzie wzór w D2 to:

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

    W efekcie Excel zwraca listę unikalnych nazw bez pustych komórek:

    Uwaga: W przypadku, gdy dane oryginalne zawierają zera , jedna wartość zerowa znajdzie się na unikalnej liście.

    Znajdź unikalne wartości w określonych kolumnach

    Czasami możesz chcieć wyodrębnić unikalne wartości z dwóch lub więcej kolumn, które nie sąsiadują ze sobą. Czasami możesz również chcieć zmienić kolejność kolumn na liście wynikowej. Oba zadania można zrealizować za pomocą funkcji CHOOSE.

    UNIQUE(CHOOSE({1,2,...}, zakres1 , zakres2 ))

    Załóżmy, że z naszej przykładowej tabeli chcemy uzyskać listę zwycięzców na podstawie wartości z kolumn A i C i ułożyć wyniki w takiej kolejności: najpierw dyscyplina sportu (kolumna C), a następnie nazwisko sportowca (kolumna A). Aby to zlecić, konstruujemy taką formułę:

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

    I uzyskać następujący wynik:

    Jak działa ta formuła:

    Funkcja CHOOSE zwraca dwuwymiarową tablicę wartości z podanych kolumn, w naszym przypadku zamienia również kolejność kolumn.

    {"Koszykówka", "Andrzej"; "Koszykówka", "Betty"; "Siatkówka", "Dawid"; "Koszykówka", "Andrzej"; "Hokej", "Andrzej"; "Piłka nożna", "Robert"; "Siatkówka", "Dawid"; "Hokej", "Andrzej"; "Koszykówka", "Dawid"}

    Z powyższej tablicy funkcja UNIQUE zwraca listę unikalnych rekordów.

    Znajdź unikalne wartości i obsłuż błędy

    Formuły UNIQUE, które omawialiśmy w tym poradniku, działają po prostu doskonale... pod warunkiem, że istnieje przynajmniej jedna wartość spełniająca określone kryteria. Jeśli formuła niczego nie znajdzie, pojawia się błąd #CALC!

    Aby temu zapobiec, po prostu zawiń swoją formułę w funkcję IFERROR.

    Na przykład, jeśli nie znaleziono żadnych unikalnych wartości spełniających kryteria, można nie wyświetlać nic, czyli pusty ciąg (""):

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

    Możesz też wyraźnie poinformować swoich użytkowników, że nie znaleziono żadnych wyników:

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

    Funkcja UNIQUE w programie Excel nie działa

    Jak zauważyłeś, pojawienie się funkcji UNIQUE sprawiło, że znajdowanie unikalnych wartości w Excelu stało się niewiarygodnie proste. Jeśli nagle Twoja formuła skutkuje błędem, najprawdopodobniej jest to jeden z poniższych błędów.

    #NAME? error

    Występuje, jeśli używasz formuły UNIQUE w wersji programu Excel, w której ta funkcja nie jest obsługiwana.

    Obecnie funkcja UNIQUE jest dostępna tylko w Excelu 365 i 2021. Jeśli masz inną wersję, możesz znaleźć odpowiednie rozwiązanie w tym poradniku: Jak uzyskać unikalne wartości w Excelu 2019, Excelu 2016 i wcześniejszych.

    Błąd #NAME? w obsługiwanych wersjach wskazuje, że nazwa funkcji jest źle napisana.

    #BłądSPILL

    Występuje, jeśli jedna lub więcej komórek w zakresie rozlanym nie jest całkowicie pusta.

    Aby naprawić błąd, wystarczy wyczyścić lub usunąć niepuste komórki. Aby zobaczyć, które dokładnie komórki przeszkadzają, kliknij wskaźnik błędu, a następnie kliknij Wybierz komórki przeszkadzające . Więcej informacji znajdziesz na stronie #SPILL! błąd w Excelu - przyczyny i poprawki.

    Oto jak znaleźć unikalne wartości w Excelu. Dziękuję za przeczytanie i mam nadzieję, że zobaczymy się na naszym blogu za tydzień!

    Zeszyt ćwiczeń do pobrania

    Przykłady formuł unikalnych wartości w Excelu (plik .xlsx)

    Michael Brown jest oddanym entuzjastą technologii z pasją do upraszczania złożonych procesów za pomocą narzędzi programowych. Dzięki ponad dziesięcioletniemu doświadczeniu w branży technologicznej doskonalił swoje umiejętności w programach Microsoft Excel i Outlook, a także w Arkuszach i Dokumentach Google. Blog Michaela jest poświęcony dzieleniu się swoją wiedzą i doświadczeniem z innymi, dostarczając łatwych do zastosowania wskazówek i samouczków w celu poprawy produktywności i wydajności. Niezależnie od tego, czy jesteś doświadczonym profesjonalistą, czy początkującym, blog Michaela oferuje cenne spostrzeżenia i praktyczne porady dotyczące maksymalnego wykorzystania tych niezbędnych narzędzi programowych.