Choose
Choose to funkcja arkusza (Excel i Arkusze Google) zwracająca element z listy na podstawie indeksu; służy do mapowania kodów na etykiety, wyboru zakresu do obliczeń i budowy dynamicznych tablic, przy składni: =WYBIERZ(indeks; wartość1; wartość2; …), działającej dla tekstu, liczb, zakresów i tablic.
- Określ indeks wyboru (liczba lub wynik formuły)
- Wypisz kandydujące wartości lub zakresy
- Zachowaj zgodność kolejności argumentów z indeksami
- Zadbaj o zgodny kształt zakresów przy zwrocie tablic
- Zabezpiecz błędy za pomocą JEŻELI.BŁĄD lub WALIDACJI
Przyspiesz etykietowanie 7 poziomów NPS, łącząc Choose z ZAOKR.DO.CAŁK i SEKWENCJA; dla małych słowników (≤10 pozycji) to czystsze niż WYSZUKAJ.X, a przy 3000 wierszy skraca formuły o połowę bez tabel pomocniczych.
Funkcja WYBIERZ/CHOOSE w praktyce: sens i granice
WYBIERZ (ang. CHOOSE) to szybki „przełącznik” pomiędzy wartościami, tekstami i zakresami. Działa deterministycznie: wskazany indeks wybiera konkretny argument i zwraca go dalej. W środowiskach 365/Arkusze Google funkcja bez problemu obsługuje również tablice dynamiczne, co otwiera sprytne, kompaktowe konstrukcje formuł.
Jak działa składnia WYBIERZ i jakie ma ograniczenia?
Składnia: =WYBIERZ(indeks; wartość1; [wartość2]; …). Argument „indeks” powinien być liczbą całkowitą dodatnią wskazującą pozycję w liście argumentów. Liczba dostępnych elementów zależy od wersji (w Excelu do 254). Gdy indeks nie mieści się w zakresie dostępnych pozycji, pojawia się błąd (#LICZBA!); gdy indeks nie jest liczbą, pojawia się #ARG!. WYBIERZ przyjmuje zarówno skalar (pojedynczą liczbę/tekst), jak i zakres (np. A2:A100) czy stałą tablicową (np. {1\;2\;3}). Zwracany typ jest zgodny z wybranym argumentem: może to być liczba, tekst, pojedyncza komórka, kolumna, wiersz albo cała tablica.
Do jakich zadań WYBIERZ daje największą przewagę?
Najlepiej sprawdza się w małych słownikach (2–10 pozycji), gdy chcesz:
Przykład mapowania kodu: =WYBIERZ(B2; „Brąz”; „Srebro”; „Złoto”), gdzie B2 ∈ {1;2;3} przypisuje poziom statusu klienta.
Przykład wyboru zakresu: =SUMA(WYBIERZ(D1; F2:F100; G2:G100; H2:H100)) – D1 wybiera, którą kolumnę zsumować (1, 2 lub 3).
Jak wybrać zakres obliczeń z listy rozwijanej?
Połącz walidację danych (lista) z WYBIERZ. Załóżmy, że w komórce E1 użytkownik wybiera 1–3, a nazwane zakresy Sprzedaż_Q1, Sprzedaż_Q2, Sprzedaż_Q3 mają identyczną długość:
=ŚREDNIA(WYBIERZ(E1; Sprzedaż_Q1; Sprzedaż_Q2; Sprzedaż_Q3))
Formuła dynamicznie przepina obliczenia na wybrany kwartał bez IF-ów kaskadowych i bez ADR.POŚR (INDIRECT), więc pozostaje stabilna przy zmianach struktury arkusza.
Czy można zbudować tablicę 2D z WYBIERZ bez funkcji CHOOSECOLS?
Tak. Sprytny trik to wykorzystanie stałej tablicowej jako „indeksu wielu wyborów”. Jeśli chcesz złożyć kolumny A, C, B w tej kolejności, użyj:
=WYBIERZ({1\;3\;2}; A2:A100; B2:B100; C2:C100)
Klamrowa tablica {1\;3\;2} wymusza zwrot wielu elementów jednocześnie. Efektem jest trójkolumnowa tablica rozlana w prawo w kolejności A, C, B. Warunek konieczny: wszystkie zakresy mają identyczną wysokość.
Jak łączyć WYBIERZ z WYSZUKAJ.X lub INDEKS/PODAJ.POZYCJĘ, by przeszukiwać różne obszary?
Use-case: jeden formularz raportu z trzema rynkami, różne tabele źródłowe. Klucz w A2, wybór rynku w B1 (1=PL, 2=CZ, 3=SK):
=WYSZUKAJ.X(A2; WYBIERZ(B1; PL!A:A; CZ!A:A; SK!A:A); WYBIERZ(B1; PL!D:D; CZ!D:D; SK!D:D); „brak”)
WYBIERZ przełącza pary kolumn (klucz i zwrot) w zależności od rynku, a jedna formuła obsługuje wszystkie przypadki.
Kiedy WYBIERZ zamiast WYSZUKAJ.X, a kiedy odwrotnie?
WYBIERZ jest szybsze do małych, stałych mapowań i przełączania zakresów; WYSZUKAJ.X (XLOOKUP) i INDEKS/PODAJ.POZYCJĘ wygrywają, gdy lista rośnie, wymagasz odporności na zmiany kolejności kolumn lub chcesz wyszukiwać w warunkach niepełnego dopasowania. Reguła kciuka: ≤10 pozycji – WYBIERZ; większe lub zmienne słowniki – WYSZUKAJ.X.
Jak zmapować miesiące i kwartały bez tabel pomocniczych?
Załóżmy, że w C2 masz datę. Zwrócenie polskiego skrótu miesiąca:
=WYBIERZ(MIESIĄC(C2); „sty”; „lut”; „mar”; „kwi”; „maj”; „cze”; „lip”; „sie”; „wrz”; „paź”; „lis”; „gru”)
Kwartał jako tekst:
=WYBIERZ(ZAOKR.DO.CAŁK(MIESIĄC(C2)/3); „Q1”; „Q2”; „Q3”; „Q4”)
Jak bezpiecznie obsłużyć błędy indeksu i typów?
Stosuj walidację danych lub JEŻELI.BŁĄD. Dla indeksu w D1:
=JEŻELI.BŁĄD(WYBIERZ(D1; „A”; „B”; „C”); „Nieprawidłowy wybór”)
Gdy indeks powstaje z warunków logicznych, wymuś liczby całkowite przez ZAOKR.DO.CAŁK albo DOPASUJ, aby wyeliminować przypadkowe wartości pośrednie.
Jak łączyć WYBIERZ z tablicami dynamicznymi, by skrócić formuły?
W 365/Arkuszach Google możesz zbudować „przełączane” zestawy danych bez Power Query. Dwie tabele o tej samej liczbie wierszy: TabelaA (kolumny A:C) i TabelaB (kolumny F:H). Przełącznik w E1 = 1 lub 2:
=WYBIERZ(E1; A2:C100; F2:H100)
Wynik rozlewa się jako pełna tablica, którą dalej przetworzysz np. przez FILTRUJ, SORTUJ lub UNIKATOWE.
Jakie są pułapki wydajności i stabilności?
– Złożone obliczenia jako argumenty WYBIERZ potrafią spowolnić arkusz; lepiej referować gotowe zakresy i przeliczać je niżej
– Niezgodne wymiary przy składaniu tablic (różna liczba wierszy) powodują błędy rozlania
– Zagnieżdżanie wielu WYBIERZ utrudnia późniejszą edycję; rozważ nazwy zakresów lub małą tabelę słownikową zamiast twardego kodowania
– Różne lokalizacje używają różnych nazw funkcji (WYBIERZ vs CHOOSE) i separatorów argumentów (średnik vs przecinek); kopiując formuły między systemami, zachowaj czujność
Czy WYBIERZ potrafi zastąpić zagnieżdżone JEŻELI?
Tak, gdy wybór da się zakodować indeksem. Zamiast długiego łańcucha JEŻELI(warunek; wynik1; JEŻELI(…)) zastosuj mapowanie warunków do liczb, a następnie WYBIERZ: najpierw wyznacz indeks np. przez DOPASUJ(PRAWDA; warunki; 0), potem podaj listę wyników w kolejności zgodnej z warunkami.
| Scenariusz | Najprostsze rozwiązanie |
|---|---|
| Przełączanie zakresu do SUMA/ŚREDNIA | SUMA(WYBIERZ(indeks; zakres1; zakres2; …)) |
| Mały słownik kod→etykieta (≤10 pozycji) | WYBIERZ(kod; „etykieta1”; „etykieta2”; …) |
| Zmiana kolejności kolumn (2–5 kolumn) | WYBIERZ({kolejność}; kol1; kol2; …) |
| Wyszukiwanie w rosnącym słowniku | WYSZUKAJ.X lub INDEKS/PODAJ.POZYCJĘ |
Jak uporządkować kod, by WYBIERZ było czytelne dla zespołu?
– Zastąp literały tekstowe nazwami z Definiowanych Nazw (np. Nazwa_Statusu1 zamiast „Brąz”)
– Grupuj argumenty w logiczne bloki (np. pary klucz/zwrot dla wyszukiwania)
– Dodaj komentarze do komórek z kluczowymi formułami i dokumentuj znaczenie indeksu
Mity i fakty o WYBIERZ/CHOOSE
WYBIERZ zawsze zastępuje WYSZUKAJ.X w mapowaniach.
Dla większych, zmiennych słowników WYSZUKAJ.X jest elastyczniejszy i łatwiejszy w utrzymaniu; WYBIERZ wygrywa w małych, stałych zestawach.
WYBIERZ „liczy” tylko wybrany argument, więc jest zawsze szybki.
Używaj ostrożnie kosztownych obliczeń jako argumentów – w praktyce opłaca się przekazywać gotowe zakresy, a obliczenia wykonywać później.
WYBIERZ nie współpracuje z tablicami dynamicznymi.
W nowszych wersjach obsługuje zarówno zwrot kolumn/wierszy, jak i składanie wielu kolumn naraz przez stałe tablicowe.
Najczęściej zadawane pytania
Czy mogę użyć WYBIERZ do zwrócenia wielu nieprzyległych kolumn?
Co się stanie, gdy indeks wyjdzie poza liczbę argumentów?
Czy w Arkuszach Google nazwa funkcji jest taka sama?
Jak uniknąć zbyt długich formuł WYBIERZ?
Kompas decydenta w arkuszu: co wybrać i kiedy
– Mały, stały słownik lub prosty przełącznik zakresów: WYBIERZ z czytelnym indeksem
– Rearanżacja kilku kolumn bez Power Query: WYBIERZ z tablicą stałą jako indeksem
– Jedna formuła dla wielu źródeł danych: WYBIERZ + WYSZUKAJ.X (pary zakresów klucz/zwrot)
– Wzrost liczby pozycji lub częste zmiany: przenieś logikę do WYSZUKAJ.X lub tabel słownikowych
– Stabilność i wydajność: unikaj ciężkich obliczeń wewnątrz argumentów WYBIERZ, dodaj walidację oraz JEŻELI.BŁĄD
Co dalej warto przemyśleć?
– Czy słownik, który dziś ma 5 pozycji, nie urośnie do 50 – i kiedy warto zawczasu przejść na WYSZUKAJ.X?
– Jak nazwy zakresów i opis indeksu w dokumentacji zespołowej ograniczą ryzyko błędów przy zmianach?
– Które miejsca w Twoim arkuszu zyskają na przełączeniu z kaskady JEŻELI na zwarte mapowanie przez WYBIERZ?
Sprawdź również:
Dodaj komentarz jako pierwszy!