Sisukord
Õpik selgitab CHOOSE-funktsiooni süntaksit ja põhilisi kasutusvõimalusi ning toob mõned mittetriviaalsed näited, mis näitavad, kuidas kasutada CHOOSE-valemit Excelis.
CHOOSE on üks neist Exceli funktsioonidest, mis ei pruugi üksi kasulikuna tunduda, kuid koos teiste funktsioonidega kombineerituna annab mitmeid suurepäraseid eeliseid. Kõige lihtsamal tasemel kasutate funktsiooni CHOOSE selleks, et saada loetelust väärtus, määrates selle väärtuse asukoha. Edasi selles õpetuses leiate mitmeid täiustatud kasutusvõimalusi, mida tasub kindlasti uurida.
Exceli funktsioon CHOOSE - süntaks ja põhilised kasutusalad
Exceli funktsioon CHOOSE on mõeldud selleks, et tagastada loetelust väärtus, mis põhineb määratud positsioonil.
Funktsioon on saadaval programmides Excel 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010 ja Excel 2007.
Funktsiooni CHOOSE süntaks on järgmine:
CHOOSE(index_num, value1, [value2], ...)Kus:
Index_num (nõutav) - tagastatava väärtuse asukoht. See võib olla mis tahes number vahemikus 1 kuni 254, lahtriviide või mõni muu valem.
Väärtus1, väärtus2, ... - nimekiri kuni 254 väärtusest, mille hulgast valida. Väärtus1 on kohustuslik, muud väärtused on vabatahtlikud. Need võivad olla numbrid, tekstiväärtused, lahtriviited, valemid või määratletud nimed.
Siin on näide CHOOSE valemist kõige lihtsamal kujul:
=CHOOSE(3, "Mike", "Sally", "Amy", "Neal")
Valem tagastab "Amy", sest index_num on 3 ja "Amy" on loetelu kolmas väärtus:
Exceli funktsioon CHOOSE - 3 asja, mida meeles pidada!
CHOOSE on väga lihtne funktsioon ja vaevalt, et teil tekib raskusi selle rakendamisel oma töölehtedel. Kui teie CHOOSE-valemi tagastatud tulemus on ootamatu või ei vasta teie soovitud tulemusele, võib see olla tingitud järgmistest põhjustest:
- Valikuvõimaluste arv on piiratud 254-ga.
- Kui index_num on väiksem kui 1 või suurem kui nimekirjas olevate väärtuste arv, tagastatakse viga #VALUE!.
- Kui index_num argument on murdarv, siis kärbitakse see väikseima täisarvuni.
Kuidas kasutada funktsiooni CHOOSE Excelis - valemi näited
Järgmised näited näitavad, kuidas CHOOSE võib laiendada teiste Exceli funktsioonide võimalusi ja pakkuda alternatiivseid lahendusi mõnele levinud ülesandele, isegi neile, mida paljud peavad teostamatuks.
Exceli CHOOSE sisseehitatud IF-de asemel
Üks sagedasemaid ülesandeid Excelis on erinevate väärtuste tagastamine määratud tingimuse alusel. Enamasti saab seda teha klassikalise sisseehitatud IF-avalduse abil. Kuid funktsioon CHOOSE võib olla kiire ja lihtsasti mõistetav alternatiiv.
Näide 1. Erinevate väärtuste tagastamine sõltuvalt tingimusest
Oletame, et teil on õpilaste hindeid sisaldav veerg ja te soovite hindeid märgistada järgmiste tingimuste alusel:
Tulemus | Tulemus |
Vaene | 0 - 50 |
Rahuldav | 51 - 100 |
Hea | 101 - 150 |
Suurepärane | üle 151 |
Üks võimalus selleks on pesitseda mõned IF-vormelid üksteise sees:
=IF(B2>=151, "Suurepärane", IF(B2>=101, "Hea", IF(B2>=51, "Rahuldav", "Halb")))
Teine võimalus on valida tingimusele vastav silt:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent")
Kuidas see valem töötab:
In the index_num argumendiga hindate iga tingimust ja tagastate TRUE, kui tingimus on täidetud, vastasel juhul FALSE. Näiteks lahtris B2 olev väärtus vastab kolmele esimesele tingimusele, seega saame selle vahetulemuse:
=CHOOSE(TRUE + TRUE + TRUE + FALSE, "Poor", "Satisfactory", "Good", "Excellent")
Arvestades, et enamikus Exceli valemites on TRUE võrdne 1 ja FALSE 0, siis meie valem läbib selle muutuse:
=CHOOSE(1 + 1 + 1 + 1 + 0, "Poor", "Satisfactory", "Good", "Excellent")
Pärast liitmisoperatsiooni sooritamist on meil:
=CHOOSE(3, "Poor", "Satisfactory", "Good", "Excellent")
Tulemusena tagastatakse nimekirja 3. väärtus, mis on "Good".
Näpunäited:
- Valemi paindlikumaks muutmiseks võite näiteks kasutada rakuviiteid kõvakooditud siltide asemel:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), $E$1, $E$2, $E$3, $E$4)
- Kui ükski teie tingimustest ei ole TRUE, siis on index_num argument seatakse 0-ks, mis sunnib teie valemit tagastama vea #VALUE! Selle vältimiseks mähkige lihtsalt CHOOSE funktsioonis IFERROR järgmiselt:
=IFERROR(CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent"), "")
Näide 2. Erinevate arvutuste tegemine sõltuvalt tingimusest
Sarnaselt saate kasutada Exceli funktsiooni CHOOSE, et teha üks arvutus võimalike arvutuste/vormelite seerias, ilma et oleks vaja mitut IF-avaldust üksteise sisse pesitseda.
Arvutame näiteks iga müüja komisjonitasu sõltuvalt tema müügist:
Komisjon | Müük |
5% | $0 kuni $50 |
7% | $51 kuni $100 |
10% | üle $101 |
Kui müügisumma on B2, võtab valem järgmine kuju:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*5%, B2*7%, B2*10%)
Selle asemel, et protsendid valemisse kõvasti sisse kodeerida, võite viidata vastavale lahtrisse oma viitetabelis, kui see on olemas. Ärge unustage lihtsalt fikseerida viited, kasutades $-märki.
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*$E$2, B2*$E$3, B2*$E$4)
Exceli CHOOSE valem juhuslike andmete genereerimiseks
Nagu te ilmselt teate, on Microsoft Excelil spetsiaalne funktsioon, mille abil saab genereerida juhuslikke täisarvusid teie poolt määratud alumise ja ülemise numbri vahel - funktsioon RANDBETWEEN. Peske see sisse index_num argumendi CHOOSE ja teie valem genereerib peaaegu kõik soovitud juhuslikud andmed.
Näiteks saab selle valemiga koostada juhuslike eksamitulemuste nimekirja:
=CHOOSE(RANDBETWEEN(1,4), "Poor", "Satisfactory", "Good", "Excellent")
Valemi loogika on ilmselge: RANDBETWEEN genereerib juhuslikke numbreid 1 kuni 4 ja CHOOSE tagastab vastava väärtuse neljast eelnevalt määratud väärtusest koosnevast nimekirjast.
Märkus. RANDBETWEEN on lenduv funktsioon ja see arvutab uuesti iga muudatuse korral, mida te töölehel teete. Selle tulemusena muutub ka teie juhuväärtuste loend. Selle vältimiseks saate asendada valemid nende väärtustega, kasutades funktsiooni Paste Special funktsioon.
Vali valem, et teha vasakpoolne Vlookup
Kui olete kunagi Excelis vertikaalset otsingut teinud, siis teate, et funktsioon VLOOKUP saab otsida ainult kõige vasakpoolsemas veerus. Olukordades, kus teil on vaja tagastada otsingusammast vasakule jäävat väärtust, saate kas kasutada kombinatsiooni INDEX / MATCH või trikitada VLOOKUPi, pesitsedes sellesse funktsiooni CHOOSE. Järgnevalt on kirjeldatud, kuidas:
Oletame, et teil on veerus A hinde nimekiri, veerus B õpilaste nimed ja te soovite välja otsida konkreetse õpilase hinde. Kuna tagastussammas on otsingusammast vasakul, annab tavaline Vlookup-valem tagasi #N/A vea:
Selle probleemi lahendamiseks laske funktsioonil CHOOSE vahetada veergude positsioonid, öeldes Excelile, et veerg 1 on B ja veerg 2 on A:
=CHOOSE({1,2}, B2:B5, A2:A5)
Kuna me esitame {1,2} massiivi {1,2} in index_num argumendi puhul aktsepteerib funktsioon CHOOSE vahemikke vahemikus väärtus argumendid (tavaliselt ei ole).
Nüüd põimida ülaltoodud valemiga table_array VLOOKUPi argument:
=VLOOKUP(E1,CHOOSE({1,2}, B2:B5, A2:A5),2,FALSE)
Ja voilà - otsing vasakule toimub tõrgeteta!
Vali valem, mis tagastatakse järgmisel tööpäeval
Kui te ei ole kindel, kas te peaksite homme tööle minema või võite jääda koju ja nautida oma hästi teenitud nädalavahetust, saab Exceli funktsiooniga CHOOSE teada, millal on järgmine tööpäev.
Eeldades, et teie tööpäevad on esmaspäevast reedeni, on valem järgmine:
=TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,1,1,3,2)
Esmapilgul keeruline, kuid lähemal vaatlusel on valemi loogikat lihtne järgida:
WEEKDAY(TODAY()) tagastab tänasele kuupäevale vastava järjekorranumbri vahemikus 1 (pühapäev) kuni 7 (laupäev). See number läheb üle index_num meie CHOOSE-valemi argument.
Väärtus1 - väärtus7 (1,1,1,1,1,1,3,2) määrab, mitu päeva lisada praegusele kuupäevale. Kui täna on pühapäev - neljapäev (indeks_num 1 - 5), siis lisate 1, et naasta järgmine päev. Kui täna on reede (indeks_num 6), siis lisate 3, et naasta järgmine esmaspäev. Kui täna on laupäev (indeks_num 7), siis lisate 2, et naasta järgmine esmaspäev jälle. Jah, see on nii lihtne :)
Vali valem, et tagastada kohandatud päeva/kuu nimi kuupäevast
Olukordades, kus soovite saada päeva nime standardformaadis, nagu täisnimi (esmaspäev, teisipäev jne) või lühinimi (esmaspäev, teisipäev jne), saate kasutada funktsiooni TEXT, nagu on selgitatud selles näites: Get day of week from date in Excel.
Kui soovite tagastada nädalapäeva või kuu nime kohandatud formaadis, kasutage funktsiooni CHOOSE järgmiselt.
Et saada nädalapäev:
=CHOOSE(WEEKDAY(A2),"Su","Mo","Tu","We","Th","Fr","Sa")
Et saada kuu:
=CHOOSE(MONTH(A2), "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
Kus A2 on lahter, mis sisaldab algset kuupäeva.
Ma loodan, et see õpetus andis teile mõned ideed, kuidas saate Excelis kasutada funktsiooni CHOOSE oma andmemudelite täiustamiseks. Ma tänan teid lugemise eest ja loodan, et näeme teid järgmisel nädalal meie blogis!
Lae alla praktiline töövihik
Excel CHOOSE funktsiooni näited