wijzig taal:

Met gegevensvalidatie kunnen keuzelijsten aan cellen worden toegevoegd. Hier zal worden uitgelegd hoe de keuzemogelijkheden van een keuzelijst afhankelijk gemaakt kunnen worden van de gekozen waarde in een andere keuzelijst. Dit wordt ook wel getrapte validatie genoemd. In onderstaand voorbeeld zijn in cellen A1 en B1 keuzelijsten opgenomen. De bedoeling is dat als in A1 voor jongen gekozen wordt, dat dan alleen jongensnamen (cellen D1:D4) zichtbaar zijn in keuzelijst B1 en bij de keuze voor meisje alleen meisjesnamen (cellen E1:E4).

afhankelijke keuzelijsten 1

Om dat te realiseren moet eerst aan cel A1 met gegevensvalidatie een keuzelijst worden toegevoegd met keuzemogelijkheden jongen en meisje:

afhankelijke keuzelijsten 2

De volgende stap is dat de bereiken D1:D4 en E1:E4 een naam moet worden gegeven. De namen moeten zijn 'jongen' en 'meisje'. Dit kan het eenvoudigst gedaan worden door eerst het bereik te selecteren en vervolgens in het naamvak de betreffende naam te typen:

afhankelijke keuzelijsten 3

De laatste stap is het toevoegen van de afhankelijke keuzelijst aan cel B1. Als bron voor deze lijst moet ingegeven worden: =INDIRECT(A1)

afhankelijke keuzelijsten 4

Hierna zullen in de keuzelijst van B1 alleen maar meisjesnamen verschijnen als in A1 meisje gekozen wordt en jongensnamen als in A1 jongen gekozen wordt. De keuzelijst van B1 is hierdoor afhankelijk gemaakt van de keuzelijst van A1.

Vragen / suggesties

Hopelijk heeft dit artikel geholpen om afhankelijke keuzelijsten in Excel te maken. Als er verdere vragen over dit onderwerp zijn of suggesties voor verbetering, plaats dan een reactie hieronder.

Reacties  
# Vincent 17-02-2021 20:47
Hoi expert,

Kan je op deze manier het ook breder trekken en baseren op hele regels?

Bij de keuze jonge/meisje zou je ook 'maakt niet uit'moeten kunnen plaatsen, waarbij dus alle namen te zien zijn. Hoe kan ik dat maken?

Grt. Vincent
Antwoorden
# Manfred van den Noort 20-02-2021 10:50
Vincent,
Ik weet niet precies wat je bedoelt met 'baseren op hele regels'.
Maar als je bij de keuze 'maakt niet uit' alles wilt zien, dan kun je gebruik maken van de hierboven beschreven techniek. Je moet dan de meisjesnamen en jongensnamen onder elkaar zetten en deze een eigen naam geven. Daarnaast moet je alle namen dan ook een naam geven.
Als er spaties in de keuzes staan, zoals alle namen, dan kun je dat in de bereiknaam vervangen door een underscore. Bij de INDIRECT-formule moet je deze spatie dan weer vervangen door een spaties met de functie SUBSTITUEREN.
Antwoorden
# Michelle 10-02-2021 16:00
Goedemiddag,

Is het ook mogelijk om een afhankelijke keuzelijst te maken met drie waarden?
Bijvoorbeeld in rij A komt koptekst Wachtlijst status met keuze mogelijkheden (1. Urgent plaatsen;2. Actief plaatsen;3. Wacht op voorkeur;4. Wacht uit voorzorg)
In rij B koptekst classificatie, waarbij alleen de antwoorden in het dropdown menu staan die matchen met de ingevulde waarde onder rijA..
En in Rij C koptekst Streeftijd, waarbij de keuzes in tijd zijn aan te geven passend bij wat ingevuld is in Rij B

Ik had volgende formule al online gevonden en aangepast naar mijn tabel/waarden, maar hij is niet goed:
=VERSCHUIVING(DataWLstatus[[#Kopteksten];[Wlstatus]];VERGELIJKEN(DataInput[@[WL status]];DataWLstatus[@[Wlstat us]];[0]);0;AANTAL.ALS(DataWLs tatus[@[Wlstatus];DataInput[@[ WL status]]);1)

Mvg,

Michelle
Antwoorden
# Manfred van den Noort 11-02-2021 09:45
Hoi Michelle,

Waarom jouw formule met verschuiving niet goed werkt kan ik, zonder het bestand te zien, zo niet beoordelen.

Er zijn echter meerdere methodes om afhankelijke keuzelijsten in te stellen. Als ik jouw wensen goed begrijp, dan zou de methode die in bovenstaand artikel beschreven wordt ook goed moeten werken. Je moet dan voor alle keuzes een benoemd bereik aanmaken met de naam van de betreffende keuze. Omdat jouw keuzes spaties bevatten moet je deze vervangen door een underscore. De formule voor de afhankelijke keuzelijst moet dan worden:
=INDIRECT(SUBSTITUEREN(A1;" ";"_"))
Antwoorden
# Bas 22-01-2021 17:33
Goedemiddag,

Is het mogelijk om een keuzelijst te maken, waarbij de keuzelijst steeds wordt inkort aan de hand van een eerder gegeven antwoorden?

De keuzelijst wil ik gebruiken voor het spel 'Ranking the Stars'. Bij dit spel moeten 18 collega's hun andere collega's rangschikken van 1 t/m 18. Als iemand op plaats 1 bijvoorbeeld 'Mark' kiest, dan kan 'Mark' dus niet meer gekozen worden op plek 2 t/m 17. Ik zou dan ook willen dat de vervolgkeuzelijst bestaat uit de overgebleven 17 collega's. Als iemand vervolgens op plaats 2 'Sascha' kiest, dan kunnen 'Mark' en 'Sascha' dus niet meer gekozen worden op plek 3 t/m 17. De vervolgkeuzelijst bestaat dan nog maar uit 16 collega's etc. etc.

Is dit mogelijk door gebruik te maken van een aangepast vervolgkeuzelijst? Ik ben reuze benieuwd. Alvast bedankt. :)
Antwoorden
# Manfred van den Noort 25-01-2021 13:08
Jazeker kan dat. Dat kan in de volgende stappen.
Stap 1
Zet de 18 namen in A1:A18
Stap 2
Zet in cel B1 de volgende matrxiformule (afsluiten met Ctrl+Shift+Enter):
=ALS.FOUT(INDEX(A$1:A$18;KLEINSTE(ALS(ISNB(VERGELIJKEN(A$1:A$18;C$1:C$18;0));RIJ(A$1:A$18));RIJ(A1)));"")
en kopieer deze formule naar beneden t/m B18.
Stap 3
Maak een benoemd bereik aan en geef deze de naam RankingNamen en zet bij verwijst naar de volgende formule:
=VERSCHUIVING(Blad1!$B$1;;;18-AANTAL.LEGE.CELLEN(Blad1!$B$1:$B$18))
Stap 4
Voeg gegevensvalidatie toe aan C1 en zet bij bron: =RankingNamen en kopieer vervolgens C1 naar C2 t/m C18.

Kolom B is in dit geval een hulpkolom en die kan zo nodig verborgen worden.
Antwoorden
# Daniela 17-12-2020 08:57
Hoi,

Super interessant en het werkt heel goed!

Nu heb ik alleen een kleine uitbereiding hierop nodig..

Ik zou graag twee verschillende cellen in dezelfde rij afhankelijk willen maken van één en dezelfde cel in die rij.

Dus: ik wil als eerst mijn product kiezen uit een drop down, en afhankelijk van deze keuze wil ik een 'afhankelijke' dropdown creëren bij leveranciers (dus alleen de leveranciers in beeld die dat product leveren) en bij verpakkingseenheid (alleen de verpakkingseenheid waarin het product ingekocht kan worden).

Nu heb ik alle stappen doorlopen. Ik heb de producten gegroepeerd, ik heb de verpakkingseenheid voor elk product gegroepeerd, en ik heb de leveranciers voor elk product gegroepeerd (op een andere regel; zelfde naam + _L).

Nu is het mij gelukt om de verpakkingseenheid afhankelijk te maken van het product. Het lukt me echter niet (niet de juiste formule bij gegevensvalidatie?) om de leverancier ook afhankelijk te maken van het product.

Heb jij misschien een idee hoe ik dit kan doen en wat ik wellicht fout doe?
Antwoorden
# Manfred van den Noort 17-12-2020 09:36
Hoi Daniela,
Gebruik dan bij leveranciers de formule: INDIRECT(A1&"_L")
Antwoorden
# Daniela 17-12-2020 10:38
Het is gelukt, geweldig! Dank je wel.
Antwoorden
# Jacob 11-12-2020 13:38
Bedankt Manfred, weer een stukje verder met mijn puzzel.

Het werkt.
Antwoorden
# Jacob 11-12-2020 11:00
Kan het eerste veld ook "gereset" worden.

Dus veld waar je jongen meisje selecteerd, blanko en vervolgens de afhankelijke dropdown ook leeg wordt?
Antwoorden
# Manfred van den Noort 11-12-2020 11:47
Dat kan alleen met VBA. Zet daarvoor de volgende code achter het werkblad:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Range("B1").ClearContents
End If
End Sub
Antwoorden
# Jacob 11-12-2020 11:48
Beter gezegd:
in dropdown #1
optie 1 -> ""
optie 2 -> meisje
optie 3 -> jongen

Bij optie 1 moet de afhankelijke dropdown leeg zijn.
Antwoorden
# Manfred van den Noort 11-12-2020 12:32
Als gezegd kan dat met VBA. De code die ik je in mijn vorige reactie gaf regelt dan B1 leeg wordt gemaakt als A1 wijzigt. Want als je bijv. jongen wijzigt naar meisje, dan moet B1 ook leeg worden.
Antwoorden
# Jacob 17-12-2020 14:19
Ik wil niet te veel vragen maar heb de afgelopen tijd geprobeerd de VBA uit te breiden.
Dit is waar ik vast loop:
Range("H6").ClearContents

^^ werkt perfekt voor Cell H6.
Nu probeer ik het zover te krijgen dat als cell F6 (de eerste dropdown) de rest van de regel ook blanco is:

Range("H6&H6&J6&L6&N6&P6&R6&T6").ClearContents

^^ dat werkt blijkbaar niet. Nu moet ik wel erbij zeggen dat het 3 azonderlijke afhankelijke dropdowns zijn.

de eerste geeft weer een hoofdgroep met afzonderlijk de items.

De tweede een locatie met locatie eisen.

De derde een veiligheidscode.

MvG.
Antwoorden
# Manfred van den Noort 17-12-2020 14:54
De syntax klopt niet. Je moet de cellen in dit geval scheiden door een komma. Dus:
Range("H6,J6,L6,N6,P6,R6,T6").ClearContents
Antwoorden
# Nike 13-11-2020 17:51
Hoi, kan je deze gegevens (hier de namen) ook uit een ander blad in hetzelfde bestand halen?
Antwoorden
# Manfed van den Noort 14-11-2020 09:31
Jazeker, dat is geen enkel probleem. Dat kan gewoon volgens de hierboven omschreven werkwijze.
Antwoorden
arrow_up