CHOOSE-toiminto Excelissä kaavaesimerkkien kanssa

  • Jaa Tämä
Michael Brown

Ohjeessa selitetään CHOOSE-funktion syntaksi ja peruskäytöt sekä annetaan muutama ei-triviaali esimerkki CHOOSE-kaavan käytöstä Excelissä.

CHOOSE on yksi niistä Excelin funktioista, jotka eivät ehkä näytä hyödyllisiltä yksinään, mutta yhdistettynä muihin funktioihin ne antavat useita mahtavia etuja. Perustasolla käytät CHOOSE-funktiota saadaksesi arvon luettelosta määrittämällä arvon sijainnin. Tämän ohjeen jatkossa löydät useita kehittyneitä käyttötapoja, jotka ovat varmasti tutkimisen arvoisia.

    Excelin CHOOSE-funktio - syntaksi ja peruskäytöt

    Excelin CHOOSE-funktio on suunniteltu palauttamaan arvo luettelosta määritetyn sijainnin perusteella.

    Toiminto on käytettävissä Excel 365:ssä, Excel 2019:ssä, Excel 2016:ssa, Excel 2013:ssa, Excel 2010:ssä ja Excel 2007:ssä.

    CHOOSE-funktion syntaksi on seuraava:

    CHOOSE(index_num, arvo1, [arvo2], ...)

    Missä:

    Index_num (pakollinen) - palautettavan arvon sijainti. Se voi olla mikä tahansa numero väliltä 1-254, soluviite tai toinen kaava.

    Arvo1, arvo2, ... - enintään 254 arvoa sisältävä luettelo, joista valita. Arvo1 on pakollinen, muut arvot ovat valinnaisia. Ne voivat olla numeroita, tekstiarvoja, soluviittauksia, kaavoja tai määriteltyjä nimiä.

    Tässä on esimerkki CHOOSE-kaavasta yksinkertaisimmassa muodossa:

    =CHOOSE(3, "Mike", "Sally", "Amy", "Neal")

    Kaava palauttaa "Amy", koska index_num on 3 ja "Amy" on luettelon kolmas arvo:

    Excelin CHOOSE-toiminto - 3 asiaa muistettavaksi!

    CHOOSE on hyvin yksinkertainen funktio, ja tuskin törmäät vaikeuksiin sen toteuttamisessa työtauluissasi. Jos CHOOSE-kaavan palauttama tulos on odottamaton tai ei vastaa etsimääsi tulosta, se voi johtua seuraavista syistä:

    1. Valittavissa olevien arvojen määrä on rajoitettu 254:ään.
    2. Jos index_num on pienempi kuin 1 tai suurempi kuin listan arvojen määrä, palautetaan virhe #VALUE!.
    3. Jos index_num argumentti on murtoluku, se typistetään pienimpään kokonaislukuun.

    Kuinka käyttää CHOOSE-funktiota Excelissä - kaavaesimerkkejä

    Seuraavat esimerkit osoittavat, miten CHOOSE voi laajentaa muiden Excel-funktioiden ominaisuuksia ja tarjota vaihtoehtoisia ratkaisuja joihinkin yleisiin tehtäviin, jopa sellaisiin, joita monet pitävät mahdottomina toteuttaa.

    Excel CHOOSE sisäkkäisten IF:ien sijasta

    Yksi Excelin yleisimmistä tehtävistä on palauttaa erilaisia arvoja määritetyn ehdon perusteella. Useimmissa tapauksissa tämä voidaan tehdä käyttämällä klassista sisäkkäistä IF-lauseen lauseketta. CHOOSE-funktio voi kuitenkin olla nopea ja helposti ymmärrettävä vaihtoehto.

    Esimerkki 1. Eri arvojen palauttaminen ehdon perusteella

    Oletetaan, että sinulla on sarake oppilaiden pisteitä ja haluat merkitä pisteet seuraavien ehtojen perusteella:

    Tulos Pisteet
    Huono 0 - 50
    Tyydyttävä 51 - 100
    Hyvä 101 - 150
    Erinomainen yli 151

    Yksi tapa tehdä tämä on sijoittaa muutama IF-kaava toistensa sisään:

    =IF(B2>=151, "Erinomainen", IF(B2>=101, "Hyvä", IF(B2>=51, "Tyydyttävä", "Huono"))))

    Toinen tapa on valita ehtoa vastaava etiketti:

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent")

    Miten tämä kaava toimii:

    Vuonna index_num argumentin avulla arvioit jokaisen ehdon ja palautat arvon TRUE, jos ehto täyttyy, ja muuten FALSE. Esimerkiksi solun B2 arvo täyttää kolme ensimmäistä ehtoa, joten saamme tämän välituloksen:

    =CHOOSE(TRUE + TRUE + TRUE + FALSE, "Poor", "Satisfactory", "Good", "Excellent")

    Koska useimmissa Excel-kaavoissa TRUE vastaa 1:tä ja FALSE 0:ta, kaava käy läpi tämän muutoksen:

    =CHOOSE(1 + 1 + 1 + 1 + 0, "Huono", "Tyydyttävä", "Hyvä", "Erinomainen")

    Kun yhteenlasku on suoritettu, meillä on:

    =CHOOSE(3, "Huono", "Tyydyttävä", "Hyvä", "Erinomainen")

    Tuloksena palautetaan listan kolmas arvo, joka on "Hyvä".

    Vinkkejä:

    • Voit tehdä kaavasta joustavamman esimerkiksi käyttämällä soluviittauksia kovakoodattujen merkintöjen sijasta:

      =CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), $E$1, $E$2, $E$3, $E$4)

    • Jos mikään ehdoistasi ei ole TRUE, on komento index_num argumentti asetetaan arvoon 0, jolloin kaava palauttaa #VALUE! -virheen. Voit välttää tämän yksinkertaisesti kietomalla CHOOSE-funktion IFERROR-funktioon seuraavasti:

      =IFERROR(CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent"), "")

    Esimerkki 2. Suorita erilaisia laskutoimituksia ehdon mukaan.

    Vastaavalla tavalla voit käyttää Excelin CHOOSE-toimintoa suorittaaksesi yhden laskutoimituksen sarjassa mahdollisia laskutoimituksia/kaavoja ilman useiden IF-lausekkeiden sisäkkäistä käyttöä.

    Lasketaan esimerkiksi kunkin myyjän provisio myynnin mukaan:

    Komissio Myynti
    5% $0 - $50
    7% $51 - $100
    10% yli $101

    Kun myyntimäärä on B2:ssa, kaava on seuraavanlainen:

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*5%, B2*7%, B2*10%)

    Sen sijaan, että koodaisit prosentit kaavaan, voit viitata vastaavaan soluun viitetietotaulukossa, jos sellainen on olemassa. Muista vain korjata viittaukset käyttämällä $-merkkiä.

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*$E$2, B2*$E$3, B2*$E$4)

    Excel CHOOSE -kaava satunnaisten tietojen tuottamiseksi

    Kuten luultavasti tiedät, Microsoft Excelissä on erityinen toiminto, jolla voidaan luoda satunnaisia kokonaislukuja määrittämäsi ala- ja ylänumeroiden välille - RANDBETWEEN-funktio. Pane se sisään osoitteeseen index_num argumentti CHOOSE, ja kaavasi tuottaa lähes mitä tahansa satunnaista dataa.

    Tämä kaava voi esimerkiksi tuottaa luettelon satunnaisista koetuloksista:

    =CHOOSE(RANDBETWEEN(1,4), "Poor", "Satisfactory", "Good", "Excellent")

    Kaavan logiikka on ilmeinen: RANDBETWEEN tuottaa satunnaislukuja 1:stä 4:ään ja CHOOSE palauttaa vastaavan arvon ennalta määritetystä neljän arvon luettelosta.

    Huomautus. RANDBETWEEN on haihtuva funktio, ja se laskee uudelleen jokaisen taulukkoon tekemäsi muutoksen yhteydessä. Tämän seurauksena myös satunnaisarvojen luettelo muuttuu. Voit estää tämän tapahtumasta korvaamalla kaavat ja niiden arvot käyttämällä komentoa Liitä Special ominaisuus.

    VALITSE kaava vasemmanpuoleisen Vlookupin tekemistä varten

    Jos olet koskaan tehnyt pystysuuntaista hakua Excelissä, tiedät, että VLOOKUP-funktio voi hakea vain vasemmanpuoleisimmasta sarakkeesta. Tilanteissa, joissa sinun on palautettava arvo hakusarakkeen vasemmalle puolelle, voit joko käyttää INDEX / MATCH-yhdistelmää tai huijata VLOOKUPia käyttämällä CHOOSE-funktiota sen sisällä. Näin:

    Oletetaan, että sarakkeessa A on luettelo pistemääristä, sarakkeessa B opiskelijoiden nimet ja haluat hakea tietyn opiskelijan pistemäärän. Koska paluusarake on hakusarakkeen vasemmalla puolella, tavallinen Vlookup-kaava palauttaa #N/A-virheen:

    Voit korjata tämän vaihtamalla CHOOSE-toiminnon avulla sarakkeiden sijainnit ja kertomalla Excelille, että sarake 1 on B ja sarake 2 on A:

    =CHOOSE({1,2}, B2:B5, A2:A5)

    Koska annamme {1,2}-määrän sarjan muodossa index_num argumentti, CHOOSE-funktio hyväksyy vaihteluvälit alueella arvo argumentteja (normaalisti ei).

    Upota nyt yllä oleva kaava table_array VLOOKUPin argumentti:

    =VLOOKUP(E1,CHOOSE({1,2}, B2:B5, A2:A5),2,FALSE)

    Ja voilà - haku vasemmalle suoritetaan ongelmitta!

    VALITSE kaava palautettavaksi seuraavana arkipäivänä

    Jos et ole varma, pitäisikö sinun mennä huomenna töihin vai voisitko jäädä kotiin nauttimaan hyvin ansaitusta viikonlopusta, Excelin CHOOSE-toiminto voi selvittää, milloin seuraava työpäivä on.

    Jos oletetaan, että työpäivät ovat maanantaista perjantaihin, kaava on seuraava:

    =TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,1,1,3,2)

    Ensisilmäyksellä hankala, mutta tarkemmin tarkasteltuna kaavan logiikkaa on helppo seurata:

    WEEKDAY(TODAY()) palauttaa tämän päivän päivämäärää vastaavan sarjanumeron, joka vaihtelee välillä 1 (sunnuntai) - 7 (lauantai). Tämä numero menee kohtaan index_num CHOOSE-kaavamme argumentti.

    Arvo1 - arvo7 (1,1,1,1,1,1,3,2) määrittävät, kuinka monta päivää lisätään nykyiseen päivämäärään. Jos tänään on sunnuntai - torstai (index_num 1 - 5), lisäät 1 palauttaaksesi seuraavan päivän. Jos tänään on perjantai (index_num 6), lisäät 3 palauttaaksesi ensi maanantaina. Jos tänään on lauantai (index_num 7), lisäät 2 palauttaaksesi taas ensi maanantaina. Jep, se on niin yksinkertaista :)

    VALITSE kaava, jolla palautetaan päivämäärän mukautettu päivän/kuukauden nimi päivämäärän perusteella.

    Tilanteissa, joissa haluat saada päivän nimen vakiomuodossa, kuten täydellisenä nimenä (maanantai, tiistai jne.) tai lyhyenä nimenä (ma, ti, jne.), voit käyttää TEXT-toimintoa, kuten tässä esimerkissä selitetään: Get day of week from date in Excel.

    Jos haluat palauttaa viikonpäivän tai kuukauden nimen mukautetussa muodossa, käytä CHOOSE-toimintoa seuraavasti.

    Saadaksesi viikonpäivän:

    =CHOOSE(WEEKDAY(A2),"Su","Mo","Tu","We","Th","Fr","Sa")

    Saada kuukausi:

    =CHOOSE(MONTH(A2), "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

    Jossa A2 on solu, joka sisältää alkuperäisen päivämäärän.

    Toivottavasti tämä opetusohjelma on antanut sinulle ideoita siitä, miten voit käyttää Excelin CHOOSE-toimintoa tietomallien parantamiseen. Kiitän sinua lukemisesta ja toivon, että tapaamme blogissamme ensi viikolla!

    Lataa harjoituskirja

    Excel CHOOSE -funktion esimerkkejä

    Michael Brown on omistautunut teknologian harrastaja, jolla on intohimo yksinkertaistaa monimutkaisia ​​prosesseja ohjelmistotyökalujen avulla. Yli vuosikymmenen kokemuksella teknologia-alalta hän on hionut taitojaan Microsoft Excelissä ja Outlookissa sekä Google Sheetsissä ja Docsissa. Michaelin blogi on omistettu jakamaan tietojaan ja asiantuntemustaan ​​muiden kanssa, ja se tarjoaa helposti seurattavia vinkkejä ja opetusohjelmia tuottavuuden ja tehokkuuden parantamiseksi. Olitpa kokenut ammattilainen tai aloittelija, Michaelin blogi tarjoaa arvokkaita oivalluksia ja käytännön neuvoja, joiden avulla saat kaiken irti näistä tärkeistä ohjelmistotyökaluista.