Kazalo
V učbeniku so razloženi sintaksa in osnovna uporaba funkcije CHOOSE ter nekaj netrivialnih primerov uporabe formule CHOOSE v Excelu.
Funkcija CHOOSE je ena od tistih funkcij programa Excel, ki sama po sebi morda ni uporabna, vendar v kombinaciji z drugimi funkcijami prinaša številne izjemne prednosti. Na najbolj osnovni ravni funkcijo CHOOSE uporabljate za pridobivanje vrednosti s seznama z določitvijo položaja te vrednosti. V nadaljevanju tega vodnika boste našli več naprednih načinov uporabe, ki jih je vsekakor vredno raziskati.
Excelova funkcija CHOOSE - sintaksa in osnovne uporabe
Funkcija CHOOSE v Excelu je namenjena vračanju vrednosti s seznama na podlagi določenega položaja.
Funkcija je na voljo v programih Excel 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010 in Excel 2007.
Sintaksa funkcije CHOOSE je naslednja:
CHOOSE(indeks_številka, vrednost1, [vrednost2], ...)Kje:
Index_num (obvezno) - položaj vrednosti, ki jo je treba vrniti. To je lahko katero koli število med 1 in 254, sklic na celico ali druga formula.
Vrednost1, vrednost2, ... - seznam do 254 vrednosti, med katerimi lahko izbirate. vrednost1 je obvezna, druge vrednosti so neobvezne. to so lahko številke, besedilne vrednosti, sklici na celice, formule ali določena imena.
Tukaj je primer formule CHOOSE v najpreprostejši obliki:
=CHOOSE(3, "Mike", "Sally", "Amy", "Neal")
Formula vrne "Amy", ker index_num je 3 in "Amy" je tretja vrednost na seznamu:
Excelova funkcija CHOOSE - 3 stvari, ki si jih morate zapomniti!
Funkcija CHOOSE je zelo preprosta in pri njeni uporabi v delovnih listih ne boste naleteli na težave. Če je rezultat, ki ga vrne formula CHOOSE, nepričakovan ali ni takšen, kot ste ga iskali, je to lahko posledica naslednjih razlogov:
- Število vrednosti, med katerimi lahko izbirate, je omejeno na 254.
- Če index_num je manjša od 1 ali večja od števila vrednosti na seznamu, se vrne napaka #VALUE!.
- Če je index_num argument je ulomek, se skrajša na najmanjše celo število.
Kako uporabiti funkcijo CHOOSE v Excelu - primeri formul
Naslednji primeri prikazujejo, kako lahko CHOOSE razširi zmogljivosti drugih funkcij programa Excel in zagotovi alternativne rešitve za nekatera pogosta opravila, tudi tista, ki se mnogim zdijo neizvedljiva.
Excel CHOOSE namesto vgnezdenih IF-ov
Ena najpogostejših nalog v Excelu je vračanje različnih vrednosti na podlagi določenega pogoja. V večini primerov lahko to storite s klasičnim vgnezdenim stavkom IF. Toda funkcija CHOOSE je lahko hitra in razumljiva alternativa.
Primer 1. Vračanje različnih vrednosti glede na pogoj
Recimo, da imate stolpec z ocenami učencev in jih želite označiti na podlagi naslednjih pogojev:
Rezultat | Rezultati |
Slaba | 0 - 50 |
Zadovoljivo | 51 - 100 |
Dobro | 101 - 150 |
Odlično | več kot 151 |
To lahko storite tako, da nekaj formul IF vstavite eno v drugo:
=IF(B2>=151, "Odlično", IF(B2>=101, "Dobro", IF(B2>=51, "Zadovoljivo", "Slabo")))
Drug način je, da izberete oznako, ki ustreza pogoju:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Slabo", "Zadovoljivo", "Dobro", "Odlično")
Kako deluje ta formula:
V index_num ocenite vsak pogoj in vrnete TRUE, če je pogoj izpolnjen, in FALSE v nasprotnem primeru. Vrednost v celici B2 na primer izpolnjuje prve tri pogoje, zato dobimo ta vmesni rezultat:
=CHOOSE(TRUE + TRUE + TRUE + TRUE + FALSE, "Slabo", "Zadovoljivo", "Dobro", "Odlično")
Glede na to, da je v večini formul Excel TRUE enako 1, FALSE pa 0, se naša formula preoblikuje:
=CHOOSE(1 + 1 + 1 + 1 + 0, "Slabo", "Zadovoljivo", "Dobro", "Odlično")
Po operaciji seštevanja dobimo:
=CHOOSE(3, "Slabo", "Zadovoljivo", "Dobro", "Odlično")
Kot rezultat se vrne tretja vrednost na seznamu, ki je "Good".
Nasveti:
- Če želite formulo narediti bolj prilagodljivo, lahko na primer namesto trdno zakodiranih oznak uporabite sklice na celice:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), $E$1, $E$2, $E$3, $E$4)
- Če nobeden od vaših pogojev ni TRUE, se index_num argument bo nastavljen na 0, zaradi česar bo vaša formula vrnila napako #VALUE! Če se želite temu izogniti, preprosto zavijte CHOOSE v funkcijo IFERROR na naslednji način:
=IFERROR(CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Slabo", "Zadovoljivo", "Dobro", "Odlično"), "")
Primer 2. Izvedba različnih izračunov glede na stanje
Na podoben način lahko uporabite Excelovo funkcijo CHOOSE za izvedbo enega izračuna v vrsti možnih izračunov/formul, ne da bi se pri tem morali gnezditi z več stavki IF drug v drugega.
Kot primer izračunajmo provizijo vsakega prodajalca glede na njegovo prodajo:
Komisija | Prodaja |
5% | od 0 do 50 dolarjev |
7% | od 51 do 100 dolarjev |
10% | več kot 101 $ |
Z zneskom prodaje v B2 je formula naslednja:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*5%, B2*7%, B2*10%)
Namesto da v formuli trdno kodirate odstotke, se lahko sklicujete na ustrezno celico v referenčni tabeli, če obstaja. Ne pozabite le popraviti sklicevanja z znakom $.
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*$E$2, B2*$E$3, B2*$E$4)
Excelova formula CHOOSE za ustvarjanje naključnih podatkov
Kot verjetno veste, ima Microsoft Excel posebno funkcijo za generiranje naključnih celih števil med spodnjim in zgornjim številom, ki ga določite - funkcijo RANDBETWEEN. index_num argumenta CHOOSE in vaša formula bo ustvarila skoraj vse naključne podatke, ki jih želite.
S to formulo lahko na primer pripravite seznam naključnih rezultatov izpitov:
=CHOOSE(RANDBETWEEN(1,4), "Slabo", "Zadovoljivo", "Dobro", "Odlično")
Logika formule je očitna: RANDBETWEEN generira naključna števila od 1 do 4, CHOOSE pa vrne ustrezno vrednost z vnaprej določenega seznama štirih vrednosti.
Opomba: RANDBETWEEN je nestabilna funkcija in se preračuna ob vsaki spremembi delovnega lista. Posledično se bo spremenil tudi seznam naključnih vrednosti. Da bi to preprečili, lahko formule nadomestite z njihovimi vrednostmi z uporabo Posebna prilepitev funkcija.
Izberite formulo za izvedbo levega Vlookup
Če ste v Excelu že kdaj izvedli navpično iskanje, veste, da lahko funkcija VLOOKUP išče samo v najbolj levem stolpcu. Kadar morate vrniti vrednost levo od stolpca iskanja, lahko uporabite kombinacijo INDEX / MATCH ali prevarate funkcijo VLOOKUP tako, da vanjo vgradite funkcijo CHOOSE:
Recimo, da imate v stolpcu A seznam rezultatov, v stolpcu B imena študentov in želite pridobiti rezultat določenega študenta. Ker je stolpec za vračanje levo od stolpca za iskanje, običajna formula Vlookup vrne napako #N/A:
To lahko popravite tako, da s funkcijo CHOOSE zamenjate položaje stolpcev in Excelu sporočite, da je stolpec 1 B, stolpec 2 pa A:
=IZBERI({1,2}, B2:B5, A2:A5)
Ker smo v ukazu {1,2} navedli polje {1,2}. index_num funkcija CHOOSE sprejema razpone v polju vrednost argumentov (običajno ne).
Zgornjo formulo vstavite v table_array argument VLOOKUP:
=VLOOKUP(E1,CHOOSE({1,2}, B2:B5, A2:A5),2,FALSE)
In voilà - iskanje na levo se izvede brez težav!
IZBERITE formulo za vračilo naslednji delovni dan
Če niste prepričani, ali naj greste jutri v službo ali lahko ostanete doma in uživate v zasluženem vikendu, lahko z Excelovo funkcijo CHOOSE ugotovite, kdaj bo naslednji delovni dan.
Ob predpostavki, da so vaši delovni dnevi od ponedeljka do petka, je formula naslednja:
=TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,1,1,3,2)
Na prvi pogled zapleteno, vendar je logiki formule po podrobnejšem pregledu enostavno slediti:
WEEKDAY(TODAY()) vrne zaporedno številko, ki ustreza današnjemu datumu, od 1 (nedelja) do 7 (sobota). index_num argument naše formule CHOOSE.
Vrednost1 - vrednost7 (1,1,1,1,1,1,3,2) določite, koliko dni je treba dodati trenutnemu datumu. Če je danes nedelja - četrtek (indeks_število 1 - 5), dodate 1, da se vrnete naslednji dan. Če je danes petek (indeks_število 6), dodate 3, da se vrnete naslednji ponedeljek. Če je danes sobota (indeks_število 7), dodate 2, da se spet vrnete naslednji ponedeljek. Ja, tako preprosto je :)
Izberite formulo za vrnitev imena dneva/meseca po meri iz datuma
Kadar želite dobiti ime dneva v standardni obliki, kot je polno ime (ponedeljek, torek itd.) ali kratko ime (ponedeljek, torek itd.), lahko uporabite funkcijo TEXT, kot je razloženo v tem primeru: Get day of week from date in Excel.
Če želite vrniti ime dneva v tednu ali meseca v obliki po meri, uporabite funkcijo CHOOSE na naslednji način.
Pridobitev dneva v tednu:
=CHOOSE(WEEKDAY(A2),"Su","Mo","Tu","We","Th","Fr","Sa")
Za mesec dni:
=CHOOSE(MONTH(A2), "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
Pri čemer je A2 celica, ki vsebuje prvotni datum.
Upam, da vam je to vodilo dalo nekaj idej, kako lahko funkcijo CHOOSE v Excelu uporabite za izboljšanje svojih podatkovnih modelov. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!
Prenesite delovni zvezek za prakso
Primeri funkcije Excel CHOOSE