Excel CHOOSE-functie

- Vb1 - Basisgebruik: gebruik van de CHOOSE-functie alleen om een waarde te kiezen uit het lijstargument
- Vb2 – Verschillende resultaten retourneren op basis van meerdere voorwaarden
- Vb3 – Verschillende berekende resultaten retourneren op basis van voorwaarden
- Vb4 – Kies willekeurig uit een lijst
- Vb5 – Combineer CHOOSE- en VLOOKUP-functies om een waarde in de linkerkolom te retourneren
- Vb6 – Retourneer de weekdag of maand op basis van een gegeven datum
- Vb7 – Ga naar de volgende werkdag/weekenddatum op basis van vandaag
Beschrijving
De CHOOSE-functie retourneert een waarde uit de lijst met waardeargumenten op basis van het gegeven indexnummer. Bijvoorbeeld, CHOOSE(3,”Apple”,”Peach”,”Orange”) retourneert Orange, het indexnummer is 3, en Orange is de derde waarde na het indexnummer in de functie.
syntaxis en argumenten
Formulesyntaxis
CHOOSE(index_num, value1, [value2], …) |
Argumenten
|
Value1, value2… kunnen getallen, teksten, formules, celverwijzingen of gedefinieerde namen zijn.
Retourwaarde
De CHOOSE-functie retourneert een waarde uit een lijst op basis van de gegeven positie.
Gebruik en voorbeelden
In dit deel heb ik enkele eenvoudige maar representatieve voorbeelden opgesomd om het gebruik van de CHOOSE-functie uit te leggen.
Vb1 - Basisgebruik: gebruik van CHOOSE functie alleen om een waarde te kiezen uit het lijstargument
Formule1:
=CHOOSE(3,"a","b","c","d")
Retourneert: c, wat het derde argument is na het index_num van 3 in de CHOOSE-functie.
Opmerking: gebruik dubbele aanhalingstekens rond de waarde als het tekst is.
Formule2:
=CHOOSE(2,A1,A2,A3,A4)
Retourneert: Kate, de waarde van A2. Omdat het index_num 2 is, en A2 is de tweede waarde in de CHOOSE-functie.
Formule3:
=CHOOSE(4,8,9,7,6)
Retourneert: 6, het 4e lijstargument in de functie.
Vb2 – Verschillende resultaten retourneren op basis van meerdere voorwaarden
Stel dat je een lijst hebt met afwijkingen voor elk product die gelabeld moeten worden op basis van voorwaarden zoals in onderstaande screenshot weergegeven.
Meestal kun je de ALS-functie gebruiken om dit te behandelen, maar hier introduceer ik hoe je de CHOOSE-functie kunt gebruiken om dit probleem eenvoudig op te lossen.
Formule:
=CHOOSE((B7>0)+(B7>1)+(B7>5),"Top","Middle","Bottom")
Uitleg:
(B7>0)+(B7>1)+(B7>5): het index_num, B7 is 2, wat groter is dan 0 en 1 maar minder dan 5, dus krijgen we het tussenresultaat:
=CHOOSE(Waar+Waar+Onwaar,"Top","Middle","Bottom")
Zoals we weten, Waar = 1, Onwaar = 0, dus de formule kan worden gezien als:
=CHOOSE(1+1+0,"Top","Middle","Bottom")
dan
=CHOOSE(2,"Top","Middle","Bottom")
Resultaat: Middle
Vb3 – Verschillende berekende resultaten retourneren op basis van voorwaarden
Stel dat je de kortingen voor elk product moet berekenen op basis van de hoeveelheid en prijs zoals in onderstaande screenshot weergegeven:
Formule:
=CHOOSE((B8>0)+(B8>100)+(B8>200)+(B8>300),B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)
Uitleg:
(B8>0)+(B8>100)+(B8>200)+(B8>300): index_number, B8 is 102, wat groter is dan 100 maar minder dan 201, dus in dit deel retourneert het het resultaat zoals weergegeven:
=CHOOSE(waar+waar+onwaar+onwaar,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)
=CHOOSE(1+1+0+0,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)
dan
=CHOOSE(2,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)
B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5: de waarden waaruit gekozen kan worden, korting is gelijk aan prijs * hoeveelheid * kortingspercentage, omdat hier index_num 2 is, kiest het B8*C8*0.2
Retourneert: 102*2*0.2=40.8
Vb4 – Kies willekeurig uit een lijst
In Excel moet je soms een waarde willekeurig kiezen uit een gegeven lijst, de CHOOSE-functie kan dit werk oplossen.
Kies willekeurig één waarde uit een lijst:
Formule:
=CHOOSE(RANDBETWEEN(1,5),$D$2,$D$3,$D$4,$D$5,$D$6)
Uitleg:
RANDBETWEEN(1,5): index_num, verkrijg willekeurig een getal tussen 1 en 5
$D$2,$D$3,$D$4,$D$5,$D$6: de lijst met waarden waaruit gekozen kan worden
Vb5 – Combineer CHOOSE- en VLOOKUP-functies om een waarde in de linkerkolom te retourneren
Over het algemeen gebruiken we de VLOOKUP-functie =VLOOKUP (waarde, tabel, kolom_index, [bereik_zoeken]) om een waarde terug te geven op basis van een gegeven waarde uit een tabelbereik. Maar met de VLOOKUP functie, retourneert het een foutwaarde terwijl de retourkolom links van de zoekkolom staat zoals in onderstaande screenshot weergegeven:
In dit geval kun je de CHOOSE-functie combineren met de VLOOKUP-functie om het probleem op te lossen.
Formule:
=VLOOKUP(E1,CHOOSE({1,2},B1:B7,A1:A7),2,FALSE)
Uitleg:
CHOOSE({1,2},B1:B7,A1:A7): als tabel_bereik argument in de VLOOKUP-functie. {1,2} betekent om 1 of 2 weer te geven als index_num argument op basis van het kolomnummer argument in de VLOOKUP-functie. Hier is het kolomnummer in de VLOOKUP-functie 2, dus de CHOOSE functie wordt weergegeven als CHOOSE(2, B1:B7,A1:A7), wat betekent dat er een waarde wordt gekozen uit A1:A7.
Vb6 – Retourneer weekdag of maand op basis van een gegeven datum
Met de CHOOSE-functie kun je ook de relatieve weekdag en maand retourneren op basis van een gegeven datum.
Formule 1: retourneer weekdag door een datum
=CHOOSE(WEEKDAY(),"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
Uitleg:
WEEKDAY(): het index_num argument, om het weekdagnummer van de gegeven datum te krijgen, bijvoorbeeld, WEEKDAY(A5) retourneert 6, dan is het index_num argument 6.
"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday": waarde lijst argumenten, beginnen met “Sunday” omdat weekdagnummer “1” “Sunday” aangeeft.
Formule 2: retourneer maand door een datum
=CHOOSE(MONTH(),"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
Uitleg:
MONTH(): index_num argument, dat het maandnummer uit de gegeven datum haalt, bijvoorbeeld, MONTH(A5) retourneert 3.
Vb7 – Retourneer naar de volgende werkdag/weekenddatum op basis van vandaag
In dagelijkse werkzaamheden wil je misschien de volgende werkdag of weekend berekenen op basis van vandaag. Ook hier kan de CHOOSE-functie je helpen.
Bijvoorbeeld, vandaag is 12/20/2018, donderdag, nu moet je de volgende werkdag en weekend verkrijgen.
Formule 1: verkrijg de datum van vandaag
=TODAY()
Resultaat: 12/20/2018
Formule 2: verkrijg het weekdagnummer van vandaag
=WEEKDAY(TODAY())
Resultaat: 5 (terwijl vandaag 12/20/2018 is)
De weekdagnummerlijst zoals in onderstaande screenshot weergegeven:
Formule 3: verkrijg de volgende werkdag
=TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,3,2)
Uitleg:
Today(): retourneert de huidige datum
WEEKDAY(TODAY()): index_num argument in de CHOOSE-functie, verkrijg het weekdagnummer van vandaag, bijvoorbeeld, zondag is 1, maandag is 2…
1,1,1,1,1,3,2: waarde lijst argument in de CHOOSE-functie. Bijvoorbeeld, als weekday(today()) 1 (zondag) retourneert, kiest het 1 uit de lijst met waarden, dan verandert de hele formule in =Today()+1, wat betekent dat er 1 dag wordt toegevoegd om de volgende maandag te retourneren. Als weekday(today()) 6 (vrijdag) retourneert, kiest het 3 uit de lijst met waarden, omdat vrijdag 3 dagen verwijderd is van de volgende maandag.
Resultaat (terwijl vandaag 12/20/2018 is):
=12/20/2018+CHOOSE(5,1,1,1,1,1,3,2)
=12/20/2018+1
=12/21/2018
Formule 4: verkrijg de volgende weekenddag
=TODAY()+CHOOSE(WEEKDAY(TODAY()),6,5,4,3,2,1,1)
Uitleg:
6,5,4,3,2,1,1: waarde lijst argument in de CHOOSE-functie. Bijvoorbeeld, als weekday(today()) 1 (zondag) retourneert, kiest het 6 uit de lijst met waarden, dan verandert de hele formule in =Today()+6, wat betekent dat er 6 dagen worden toegevoegd en de volgende zaterdag wordt geretourneerd.
Resultaat:
=12/20/2018+CHOOSE(5,6,5,4,3,2,1,1)
=12/20/2018+2
=12/22/2018
De Beste Office Productiviteitstools
Kutools voor Excel - Helpt U Om Uit Te Blinken Tussen de Menigte
Kutools voor Excel Beschikt Over Meer Dan 300 Functies, Waardoor Wat U Nodig Hebt Maar Een Klik Verwijderd Is...
Office Tab - Schakel Tabbladgestuurd Lezen en Bewerken in Microsoft Office (inclusief Excel)
- Eén seconde om te schakelen tussen tientallen open documenten!
- Verminder honderden muisklikken voor u elke dag, zeg vaarwel tegen muisarm.
- Verhoogt uw productiviteit met 50% bij het bekijken en bewerken van meerdere documenten.
- Brengt Efficiënte Tabs naar Office (inclusief Excel), Net Als Chrome, Edge en Firefox.