Sortowanie według innej kolumny za pomocą SORTBY
Porządkowanie jednej tablicy na podstawie wartości z innej tablicy
Sortowanie według innej kolumny za pomocą SORTBY to bezpłatna lekcja Excel Formulas Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Excel Formulas Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.
Dlaczego istnieje SORTBY
Funkcja SORT sortuje dane według kolumny znajdującej się wewnątrz tablicy. Co jednak zrobić, gdy chcesz uporządkować jedną listę według wartości w osobnej tablicy, która nie wchodzi w skład wyniku?
Właśnie do tego służy SORTBY. Sortuje ona jeden zakres według kolejności określonej przez zupełnie inne zakresy, umożliwiając elastyczne sortowanie według wielu kluczy bez dołączania kolumn sortowania do wyników.
=SORTBY(A2:A10, B2:B10)Składnia funkcji SORTBY
Postać funkcji SORTBY jest następująca:
- array — dane, które mają zostać zwrócone w posortowanej kolejności
- by_array1 — wartości określające kolejność
- sort_order1 — 1 dla kolejności rosnącej, -1 dla malejącej (argument opcjonalny)
Możesz dodawać kolejne pary by_array / order, aby sortować według kilku kluczy. Każda tablica by_array musi mieć taką samą wysokość (lub szerokość) jak sortowana tablica.
=SORTBY(array, by_array1, [order1], [by_array2], [order2], ...)Sortowanie nazw według ukrytego wyniku
Załóżmy, że zakres A2:A10 zawiera nazwy graczy, a zakres B2:B10 ich wyniki. Chcesz utworzyć listę nazw uporządkowaną według wyniku, od najwyższego, ale wyświetlać tylko nazwy.
SORTBY zwróci tylko nazwy, uporządkowane według tablicy wyników. Same wyniki nie pojawią się w danych wyjściowych.
=SORTBY(A2:A10, B2:B10, -1)SORT a SORTBY
Najważniejsza różnica jest następująca: w przypadku SORT kolumna, według której sortujesz, jest częścią wyniku. W przypadku SORTBY klucz sortowania znajduje się w osobnej tablicy i nie jest zwracany.
- Użyj SORT, gdy kolumna określająca kolejność powinna pojawić się w wyniku
- Użyj SORTBY, gdy chcesz uzyskać przejrzysty wynik uporządkowany według wartości używanej w tle
=SORTBY(A2:A10, C2:C10, 1)Sortowanie całej tabeli według zewnętrznej kolumny
Zwracana tablica może obejmować wiele kolumn. Załóżmy, że zakres A2:B10 zawiera kolumny Name i Email, a zakres C2:C10 zawiera liczby określające priorytet.
SORTBY zwróci tabelę Name/Email uporządkowaną według priorytetu, mimo że priorytet nie pojawi się w wyniku.
=SORTBY(A2:B10, C2:C10, 1)Sortowanie według wielu kluczy
Dodaj kolejne pary by_array / order, aby rozstrzygać remisy. SORTBY stosuje je po kolei: pierwszy klucz sortuje w pierwszej kolejności, drugi rozstrzyga remisy, a następnie stosowane są kolejne klucze.
W tym przykładzie tabela jest sortowana rosnąco według Region, a następnie malejąco według Sales w obrębie każdego regionu.
=SORTBY(A2:C20, B2:B20, 1, C2:C20, -1)Sortowanie według obliczanej tablicy
Tablica by_array nie musi być zapisaną kolumną. Możesz sortować według obliczenia wykonywanego na bieżąco.
Załóżmy, że zakres A2:A10 zawiera nazwy produktów, zakres B2:B10 ceny, a zakres C2:C10 koszty. Aby uporządkować produkty według marży bez zapisywania jej w dodatkowym miejscu, oblicz ją wewnątrz SORTBY.
=SORTBY(A2:A10, B2:B10-C2:C10, -1)Zachowywanie jednakowego rozmiaru tablic
Każda tablica by_array musi mieć taką samą długość jak sortowana tablica. Jeśli tablica ma 9 wierszy, każda tablica by_array również musi mieć 9 wierszy.
Niezgodność rozmiarów powoduje błąd #VALUE!. Sprawdź, czy zakresy zaczynają się i kończą w tych samych wierszach.
=SORTBY(A2:A10, B2:B10, -1)SORTBY w Arkuszach Google
Arkusze Google obsługują funkcję SORTBY z tą samą składnią, więc formuły można przenosić między programami. Działanie, w tym obsługa wielu kluczy sortowania i obliczanych tablic by_array, jest zgodne z Excelem.
Podobnie jak SORT, SORTBY rozlewa wyniki, więc upewnij się, że poniżej jest wystarczająco dużo miejsca.
=SORTBY(A2:C20, B2:B20, 1, C2:C20, -1)Łączenie SORTBY z FILTER
Podobnie jak SORT, SORTBY dobrze współpracuje z FILTER. Najpierw odfiltruj tylko wybrane wiersze, a następnie posortuj pozostałe za pomocą SORTBY.
Uwaga: podczas filtrowania tablicy musisz filtrować tablicę by_array w ten sam sposób, aby zachować ich zgodność. W tym przykładzie sortujemy całą tabelę według przefiltrowanej tablicy pomocniczej tylko wtedy, gdy obie tablice zawierają te same wiersze, dlatego często prostszym rozwiązaniem jest przefiltrowanie wyniku SORTBY.
=FILTER(SORTBY(A2:C20, C2:C20, -1), SORTBY(B2:B20, C2:C20, -1)="East")Praktyczny ranking
Połączmy wszystko: utwórzmy aktualizowany na bieżąco ranking, który wyświetla nazwy graczy uporządkowane według wyniku, a remisy rozstrzyga na podstawie najmniejszej liczby prób.
Przy nazwach w zakresie A2:A20, wynikach w zakresie B2:B20 i liczbie prób w zakresie C2:C20 funkcja SORTBY sortuje najpierw według wyniku (malejąco), a następnie według liczby prób (rosnąco). Po zmianie dowolnej wartości kolejność zostanie zaktualizowana.
=SORTBY(A2:A20, B2:B20, -1, C2:C20, 1)Szybkie sprawdzenie
Imiona i nazwiska znajdują się w zakresie A2:A10, a odpowiadające im wyniki w zakresie B2:B10. Chcesz zwrócić tylko imiona i nazwiska, uporządkowane od najwyższego wyniku do najniższego. Która formuła zadziała?
Podsumowanie: sortowanie za pomocą SORTBY
Funkcja SORTBY sortuje jedną tablicę według wartości osobnych tablic, które nie są wyświetlane w wyniku:
=SORTBY(array, by_array1, order1, ...)- Dodawaj kolejne pary by_array / order, aby sortować według wielu kluczy
- Tablice by_array mogą być zapisanymi kolumnami lub obliczeniami wykonywanymi na bieżąco
- Każda tablica by_array musi mieć taką samą długość jak tablica sortowana
To podstawowe narzędzie do tworzenia przejrzystych wyników uporządkowanych według wartości używanej w tle, na przykład w rankingu.
=SORTBY(A2:A20, B2:B20, -1, C2:C20, 1)Często zadawane pytania
Czy lekcja „Sortowanie według innej kolumny za pomocą SORTBY” jest bezpłatna?
Tak — pełny tekst „Sortowanie według innej kolumny za pomocą SORTBY” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Excel Formulas Academy, przejdź na CoddyKit PRO. Kurs Excel Formulas Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Sortowanie według innej kolumny za pomocą SORTBY”?
Porządkowanie jednej tablicy na podstawie wartości z innej tablicy Ćwiczysz Excel Formulas Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Excel Formulas Academy?
Nie wymagamy żadnego doświadczenia. Excel Formulas Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Sortowanie według innej kolumny za pomocą SORTBY”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Excel Formulas Academy?
Tak. Każda lekcja Excel Formulas Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Porządkowanie wyników za pomocą SORT
- Sortowanie według innej kolumny za pomocą SORTBY
- Generowanie liczb za pomocą SEQUENCE
- Tworzenie losowych danych za pomocą RANDARRAY