0Pricing
Excel Formulas Academy · Lekcja

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

  1. Porządkowanie wyników za pomocą SORT
  2. Sortowanie według innej kolumny za pomocą SORTBY
  3. Generowanie liczb za pomocą SEQUENCE
  4. Tworzenie losowych danych za pomocą RANDARRAY
← Powrót do Excel Formulas Academy