Tartalomjegyzék
A bemutató elmagyarázza a CHOOSE függvény szintaxisát és alapvető felhasználási módjait, és néhány nem triviális példát mutat be a CHOOSE képlet Excelben történő használatára.
A CHOOSE egyike azoknak az Excel-funkcióknak, amelyek önmagukban nem tűnnek hasznosnak, de más funkciókkal kombinálva számos fantasztikus előnyt nyújtanak. A legalapvetőbb szinten a CHOOSE függvényt arra használjuk, hogy egy értéket kapjunk egy listából az érték pozíciójának megadásával. A bemutató további részében számos fejlett felhasználási lehetőséget találunk, amelyeket mindenképpen érdemes felfedezni.
Excel CHOOSE funkció - szintaxis és alapvető felhasználások
Az Excel CHOOSE függvénye arra szolgál, hogy egy megadott pozíció alapján visszaadjon egy értéket a listából.
A funkció elérhető az Excel 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010 és Excel 2007 programokban.
A CHOOSE függvény szintaxisa a következő:
CHOOSE(index_num, value1, [value2], ...)Hol:
Index_num (kötelező) - a visszaadandó érték pozíciója. 1 és 254 közötti szám, cellahivatkozás vagy egy másik képlet lehet.
Value1, value2, ... - egy legfeljebb 254 értéket tartalmazó lista, amelyből választhat. Az érték1 kötelező, a többi érték nem kötelező. Ezek lehetnek számok, szöveges értékek, cellahivatkozások, képletek vagy meghatározott nevek.
Íme egy példa a CHOOSE képletre a legegyszerűbb formában:
=CHOOSE(3, "Mike", "Sally", "Amy", "Neal")
A képlet "Amy"-t ad vissza, mert index_num 3, és "Amy" a lista 3. értéke:
Excel CHOOSE funkció - 3 dolog, amit érdemes megjegyezni!
A CHOOSE egy nagyon egyszerű függvény, és aligha fog nehézségekbe ütközni a munkalapokon való alkalmazása során. Ha a CHOOSE képlet által visszaadott eredmény váratlan vagy nem a keresett eredmény, annak a következő okai lehetnek:
- A választható értékek száma 254-re korlátozódik.
- Ha index_num kisebb, mint 1 vagy nagyobb, mint a listában szereplő értékek száma, a #VALUE! hibaüzenet érkezik vissza.
- Ha a index_num argumentum egy tört, a legkisebb egész számra rövidül.
A CHOOSE funkció használata az Excelben - képletpéldák
A következő példák azt mutatják, hogy a CHOOSE hogyan bővítheti ki más Excel-funkciók képességeit, és hogyan nyújthat alternatív megoldásokat néhány gyakori feladatra, még azokra is, amelyeket sokan megvalósíthatatlannak tartanak.
Excel CHOOSE az egymásba ágyazott IF-ek helyett
Az Excel egyik leggyakoribb feladata, hogy egy megadott feltétel alapján különböző értékeket adjon vissza. A legtöbb esetben ezt egy klasszikus, egymásba ágyazott IF utasítással lehet megtenni. A CHOOSE függvény azonban gyors és könnyen érthető alternatíva lehet.
Példa 1. Különböző értékek visszaadása feltétel alapján
Tegyük fel, hogy van egy oszlop a tanulók pontszámaival, és a pontszámokat a következő feltételek alapján szeretné felcímkézni:
Eredmény | Score |
Szegény | 0 - 50 |
Elégséges | 51 - 100 |
Jó | 101 - 150 |
Kiváló | 151 felett |
Ennek egyik módja, hogy néhány IF-formulát egymásba ágyazunk:
=IF(B2>=151, "Kiváló", IF(B2>=101, "Jó", IF(B2>=51, "Elégséges", "Gyenge"))))
Egy másik lehetőség a feltételnek megfelelő címke kiválasztása:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Gyenge", "Elégséges", "Jó", "Kiváló")
Hogyan működik ez a képlet:
A index_num argumentummal kiértékeli az egyes feltételeket, és TRUE-t ad vissza, ha a feltétel teljesül, egyébként FALSE-t. Például a B2 cellában lévő érték megfelel az első három feltételnek, így ezt a köztes eredményt kapjuk:
=CHOOSE(TRUE + TRUE + TRUE + TRUE + FALSE, "Poor", "Satisfactory", "Good", "Excellent")
Mivel a legtöbb Excel-képletben a TRUE egyenlő 1, a FALSE pedig 0, a mi képletünk átesik ezen az átalakításon:
=CHOOSE(1 + 1 + 1 + 1 + 0, "Gyenge", "Elégséges", "Jó", "Kiváló")
Az összeadási művelet elvégzése után a következőket kapjuk:
=CHOOSE(3, "Gyenge", "Elégséges", "Jó", "Kiváló")
Ennek eredményeképpen a lista 3. értékét kapjuk vissza, ami a "Jó".
Tippek:
- A képlet rugalmasabbá tétele érdekében például cellahivatkozásokat használhat a keményen kódolt címkék helyett:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), $E$1, $E$2, $E$3, $E$4)
- Ha egyik feltétel sem TRUE, akkor a index_num argumentum 0-ra lesz állítva, így a képlet a #VALUE! hibát fogja visszaadni. Ennek elkerülése érdekében egyszerűen csomagolja be a CHOOSE-t az IFERROR függvénybe, így:
=IFERROR(CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent"), "")
Példa 2. Különböző számítások elvégzése feltétel alapján
Hasonló módon az Excel CHOOSE funkcióját is használhatja a lehetséges számítások/képletek sorában egy számítás elvégzésére anélkül, hogy több IF utasítás egymásba ágyazódna.
Példaként számítsuk ki az egyes eladók jutalékát az eladásaik függvényében:
Bizottság | Értékesítés |
5% | $0 és $50 között |
7% | $51 és $100 között |
10% | több mint $101 |
A B2-ben szereplő értékesítési összeggel a képlet a következő formát ölti:
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*5%, B2*7%, B2*10%)
Ahelyett, hogy a százalékokat a képletben keményen kódolná, hivatkozhat a megfelelő cellára a referencia táblázatban, ha van ilyen. Csak ne feledje, hogy a hivatkozásokat a $ jel segítségével rögzítse.
=CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*$E$2, B2*$E$3, B2*$E$4)
Excel CHOOSE formula véletlenszerű adatok létrehozásához
Mint azt valószínűleg tudja, a Microsoft Excel rendelkezik egy speciális funkcióval, amely véletlen egész számokat generál az Ön által megadott alsó és felső számok között - a RANDBETWEEN funkcióval. Foglalja be a index_num argumentumot, és a képleted szinte bármilyen véletlenszerű adatot generál, amit csak akarsz.
Ez a képlet például egy véletlenszerű vizsgaeredményekből álló listát állíthat elő:
=CHOOSE(RANDBETWEEN(1,4), "Gyenge", "Elégséges", "Jó", "Kiváló")
A képlet logikája nyilvánvaló: a RANDBETWEEN 1 és 4 közötti véletlen számokat generál, a CHOOSE pedig visszaad egy megfelelő értéket az előre megadott négy értékből álló listából.
Megjegyzés: A RANDBETWEEN egy illékony függvény, és a munkalapon végrehajtott minden változtatáskor újraszámolja a számításokat. Ennek eredményeképpen a véletlen értékek listája is változni fog. Ennek megakadályozására a képleteket az értékükkel helyettesítheti az alábbi módon: a Beillesztés Special funkció.
VÁLASSZON képletet a bal oldali Vlookuphoz
Ha valaha is végzett már függőleges keresést az Excelben, akkor tudja, hogy a VLOOKUP funkció csak a bal szélső oszlopban tud keresni. Azokban a helyzetekben, amikor a keresési oszloptól balra lévő értéket kell visszaadnia, vagy az INDEX / MATCH kombinációt használhatja, vagy a VLOOKUP-ot a CHOOSE függvény beágyazásával trükközheti meg. Íme, hogyan:
Tegyük fel, hogy az A oszlopban van egy pontszámok listája, a B oszlopban a diákok neve, és egy adott diák pontszámát szeretné lekérdezni. Mivel a visszatérési oszlop a keresési oszlop bal oldalán van, a szokásos Vlookup formula #N/A hibát ad vissza:
Ennek kijavításához a CHOOSE funkcióval cserélje fel az oszlopok pozícióit, és mondja meg az Excelnek, hogy az 1. oszlop a B, a 2. oszlop pedig az A:
=CHOOSE({1,2}, B2:B5, A2:A5)
Mivel a {1,2} tömböt adjuk meg a index_num argumentummal, a CHOOSE függvény elfogad tartományokat a érték érveket (általában nem).
Most ágyazzuk be a fenti képletet a table_array a VLOOKUP argumentuma:
=VLOOKUP(E1,CHOOSE({1,2}, B2:B5, A2:A5),2,FALSE)
És voilá - a balra történő keresés zökkenőmentesen megtörténik!
VÁLASSZON formulát a következő munkanapon történő visszaküldéshez
Ha nem biztos benne, hogy holnap munkába kell mennie, vagy otthon maradhat, és élvezheti a jól megérdemelt hétvégét, az Excel CHOOSE funkciója kiderítheti, hogy mikor lesz a következő munkanap.
Feltételezve, hogy a munkanapok hétfőtől péntekig tartanak, a képlet a következőképpen néz ki:
=TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,1,1,3,2)
Első pillantásra bonyolult, de közelebbről megnézve a képlet logikája könnyen követhető:
WEEKDAY(TODAY()) egy sorszámot ad vissza, amely a mai napnak felel meg, 1 (vasárnap) és 7 (szombat) között. Ez a szám megy a index_num érv a CHOOSE képletünkben.
Érték1 - value7 (1,1,1,1,1,1,1,3,2) határozza meg, hogy hány napot kell hozzáadni az aktuális dátumhoz. Ha ma vasárnap - csütörtök van (index_num 1-5), akkor adjunk hozzá 1-et, hogy a következő napot adjuk vissza. Ha ma péntek van (index_num 6), akkor adjunk hozzá 3-t, hogy a következő hétfőt adjuk vissza. Ha ma szombat van (index_num 7), akkor adjunk hozzá 2-t, hogy a következő hétfőt adjuk vissza. Igen, ilyen egyszerű :)
CHOOSE formula az egyéni nap/hónap név visszaadásához a dátumból
Azokban az esetekben, amikor a nap nevét a szokásos formátumban szeretné megkapni, például teljes név (hétfő, kedd stb.) vagy rövid név (hó, kedd stb.), használhatja a TEXT funkciót, ahogyan az ebben a példában szerepel: A hét napjának lekérdezése az Excel dátumából.
Ha a hét napját vagy a hónap nevét egyéni formátumban szeretné visszaadni, használja a CHOOSE funkciót a következő módon.
A hét napját kapni:
=CHOOSE(WEEKDAY(A2),"Su","Mo","Tu","We","Th","Fr","Sa")
Hogy egy hónapot kapjon:
=CHOOSE(MONTH(A2), "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
Ahol A2 az eredeti dátumot tartalmazó cella.
Remélem, hogy ez a bemutató adott néhány ötletet, hogyan használhatja a CHOOSE funkciót az Excelben az adatmodellek bővítésére. Köszönöm, hogy elolvasta, és remélem, hogy jövő héten találkozunk a blogon!
Gyakorlati munkafüzet letöltése
Excel CHOOSE funkció példák