Spis treści
W Excelu czasami możesz potrzebować wygenerować listę na podstawie kryteriów. Dziś pokażemy Ci jak wygenerować listę na podstawie kryteriów. Do tej sesji używamy Excela 365, choć zalecane jest używanie tej wersji, nie krępuj się użyć swojej.
Po pierwsze, poznajmy zbiór danych, który jest podstawą naszych przykładów.
Mamy tu zbiór danych kilku osób z różnych lokalizacji wraz z ich pojazdami. Korzystając z tych danych, utworzymy listę na podstawie kryteriów.
Zauważ, że jest to podstawowa tabela z danymi dummy, aby zachować prostotę. W praktycznym scenariuszu możesz napotkać znacznie większy i bardziej złożony zestaw danych.
Zeszyt ćwiczeń
Zapraszamy do pobrania zeszytu ćwiczeń z poniższego linku.
Excel Generowanie listy na podstawie kryteriów.xlsxGenerowanie listy na podstawie kryteriów
Na przykład, stworzymy listę osób na podstawie ich regionu.
Ponieważ jest to mały zbiór danych, wiemy, że istnieją 4 regiony. Przechowaliśmy nazwy regionów i znajdziemy listę na podstawie regionu.
1) Użycie kombinacji INDEX-SMALL do wygenerowania listy
Tutaj potrzebujemy listy, więc nasza formuła powinna być taka, która pobierze wiele wartości z tabeli. Do tego zadania możemy użyć kombinacji INDEX oraz MAŁA funkcje.
Aby poznać te funkcje, sprawdź te artykuły: INDEX, SMALL.
Wraz z tymi dwoma, będziemy potrzebować kilku funkcji pomocniczych, JEŚLI , ROW oraz IFERROR Sprawdź artykuły, aby uzyskać więcej informacji: IF, ROW, IFERROR.
Zbadajmy formułę
=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=$G$2,ROW($B$2:$B$12)),ROW(1:1))-1,1),")
Tutaj każda funkcja ma swój cel. INDEX Funkcja zwraca wartość z tablicy B2:B12 (kolumna Nazwa) i duży MAŁA część podaje numer wiersza, który ma zostać pobrany.
IF, w ramach SMALL, sprawdza, czy kryteria są dopasowane, czy nie, a funkcja ROW Funkcja iteruje po komórkach kolumny.
Wtedy zewnętrzna ROW oznacza k-tą wartość dla MAŁA Funkcje te łącznie zwracają numer wiersza i INDEX zwraca wynik.
IFERROR aby poradzić sobie z każdym błędem, który może wynikać ze wzoru.
Przeciągając w dół uzyskasz wszystkie osoby z danego regionu.
Podobnie napisz formułę dla pozostałych regionów (formuła jest taka sama, przesuń tylko komórkę).
Alternatywna kombinacja INDEX-SMALL
Wzór możemy napisać w alternatywny sposób. Funkcje użyte do wzoru będą takie same jak poprzednie, tylko sposób prezentacji będzie inny.
Zobaczmy wzór
=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1)),")
Ponownie musisz nacisnąć CTRL + SHIFT + ENTER do wykonania formuły.
Jest niewielka różnica między tymi dwoma formułami, czy można je rozróżnić?
Tak, w naszej wcześniejszej formule odjęliśmy 1 na samym końcu MAŁA ale tutaj odjęliśmy 1 w ramach JEŚLI porcja.
Celem odjęcia 1 jest skierowanie do właściwego numeru wiersza. Wcześniej zrobiliśmy to nareszcie, tutaj zrobiliśmy to wcześniej i przechodzimy do dalszej operacji.
Napisz wzór dla pozostałych kryteriów, aby uzupełnić listę.
Read More: Jak utworzyć listę wewnątrz komórki w programie Excel (3 szybkie metody)
2. użycie funkcji AGREGAT do wygenerowania listy
Excel udostępnia funkcję o nazwie AGREGAT które można wykorzystać do wykonywania różnych zadań. Tutaj możemy użyć funkcji do wygenerowania listy na podstawie kryteriów.
Na stronie AGREGAT funkcja zwraca obliczenia zbiorcze takie jak AVERAGE, COUNT, MAX itp.
Składnia dla AGREGAT funkcja jest następująca:
AGGREGATE(funkcja_liczby,zachowanie_opcji, zakres)
funkcja_numer: Liczba ta określa, które obliczenie powinno być wykonane.
behavior_options: Ustawić to za pomocą numeru. Numer ten określa, jak funkcja będzie się zachowywać.
zakres: Zakres, który chcesz zagregować.
Na stronie AGREGAT funkcja wykonuje kilka zadań, dlatego w jej obrębie zdefiniowano wiele funkcji. Wymieniamy kilka często używanych numerów funkcji
Funkcja | Numer funkcji |
---|---|
ŚREDNIA | 1 |
COUNT | 2 |
KRAJ | 3 |
MAX | 4 |
MIN | 5 |
PRODUKT | 6 |
SUMA | 9 |
DUŻA | 14 |
MAŁA | 15 |
Aby dowiedzieć się więcej o funkcji, odwiedź stronę Pomoc techniczna firmy Microsoft miejsce.
A teraz zobaczmy wzór,
=IFERROR(INDEX($B$2:$B$12,AGGREGATE(15,6,IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1)),"")
Tutaj wraz z AGREGAT użyliśmy funkcji INDEX . INDEX przechowuje tablicę, która zwraca wartości oparte na dopasowaniach znalezionych w dalszej części formuły.
Możesz zobaczyć, że użyliśmy 15 jako liczba funkcji w AGREGAT Z powyższej tabeli wynika, że 15 wzywa do MAŁA operacja funkcyjna. Teraz możesz się odnieść?
Tak, wykonaliśmy INDEX-SMALL wzór w sposób AGREGAT funkcja.
6 dla opcji zachowania, która oznacza ignorować wartości błędów .
Napisz wzór na pozostałe wartości.
Podobne lektury
- Jak zrobić listę rzeczy do zrobienia w Excelu (3 proste metody)
- Tworzenie listy mailingowej w Excelu (2 metody)
- Jak zrobić numerowaną listę w Excelu (8 metod)
3. generowanie unikalnej listy za pomocą INDEX-MATCH-COUNTIF
Możemy stworzyć unikalną listę na podstawie kryteriów. W tym celu możemy użyć kombinacji INDEX , MATCH oraz COUNTIF .
COUNTIF zlicza komórki w zakresie, który spełnia pojedynczy warunek. I MATCH lokalizuje pozycję wartości lookup w zakresie. Aby dowiedzieć się więcej o tych funkcjach odwiedź te artykuły: DOPASOWANIE, COUNTIF.
Zbadajmy formułę
=IFERROR(INDEX($B$2:$B$12, MATCH(0, IF(G$2=$C$2:$C$12, COUNTIF($G$2:$G2, $B$2:$B$12), ""), 0)),")
W tej formule: B2:B12 to zakres kolumn, który zawiera unikalne wartości, z których chcesz wyodrębnić, C2:C12 to kolumna, która zawiera kryterium, na którym się opierasz G2 wskazuje kryterium.
W ramach MATCH podaliśmy 0 jako funkcję lookup_array, i za lookup_range wykorzystaliśmy JEŚLI część zawierająca COUNTIF Ta część zwraca wartość tak długo, jak długo znajduje się 0. Wartość tutaj działa jako numer wiersza dla INDEX .
Przeciągnij go w dół, a znajdziesz wszystkie unikalne wartości.
Nie zapomnij wykorzystać CTRL+SHIFT + ENTER aby wykonać formułę.
To było wyróżnienie wśród podejść do generowania unikalnej listy. Postępuj zgodnie z tym artykułem, aby wiedzieć o generowaniu unikalna lista na podstawie kryteriów .
4. użycie funkcji FILTR do wygenerowania listy na podstawie kryteriów
Jeśli korzystasz z programu Excel 365, to możesz wykonać to zadanie za pomocą jednej wbudowanej funkcji o nazwie FILTR .
Na stronie FILTR Funkcja filtruje zakres danych na podstawie zadanych kryteriów i wyciąga pasujące rekordy. Aby poznać funkcję, odwiedź ten artykuł: FILTR .
Teraz nasza formuła będzie następująca,
=FILTER($B$2:$B$12,$C$2:$C$12=G$2)
B2:B12 to tablica, która ma być filtrowana. Następnie podaliśmy warunek, na podstawie którego wygenerujemy listę.
Tutaj nie trzeba będzie przeciągać formuły, za jednym zamachem zapewni to wszystkie wartości i wypełni listę.
Read More: Jak zrobić listę alfabetyczną w Excelu (3 sposoby)
Wniosek
To wszystko na dziś, wymieniliśmy kilka sposobów na wygenerowanie listy na podstawie kryteriów. Mamy nadzieję, że okaże się to pomocne. Zapraszamy do komentowania, jeśli coś wydaje się trudne do zrozumienia. Daj nam znać o innych metodach, które tu pominęliśmy.