Onderwerp


Afhankelijke keuzelijst

Met gegevens validatie kun je beperkingen stellen aan de invoer van gegevens in cellen. De gewone of simpele methode van gegevens validatie heeft meestal betrekking op het direct invoeren van gegevens in één of meerdere cellen.



Informatie


Dit voorbeeld behandeld een ingewikkelder vorm van gegevens validatie. Er is een afhankelijkheid tussen twee cellen waarbij je gegevens kunt invoeren. De waarden die je uit de tweede lijst kunt kiezen (een plaatsnaam), zijn namelijk afhankelijk van de keuze die je bij de eerste lijst (een provincie) hebt gemaakt. Dit op zich is een eenvoudig gegeven, maar het geheel wordt ingewikkeld aangezien je gebruik moet maken van een aantal benoemde bereiken en de functie Indirect.



Voorbeeld.

De mogelijkheid om één plaats per provincie te kiezen betekent dat het werkboek een werkblad met 13 benoemde bereiken moet bevatten. Het eerste benoemde bereik verwijst naar de lijst met namen van de 12 provincies. De 12 andere benoemde bereiken verwijzen naar de lijsten met namen van alle plaatsen van die 12 provincies.

Dit levert onder andere de benoemde bereiken Provincies - Noord_Holland - Drenthe op. Essentieel bij deze vorm van gegevens validatie is dat de naam van het benoemde bereik overeenkomt met de veldnaam van de lijst. Dit betekent dat de veldnaam van de lijst met plaatsen in Noord Holland dus ook Noord_Holland is.

Het tweede werkblad bevat twee cellen waarbij je gegevens validatie toepast. In B6 kun je de provincie invoeren, in C6 de plaats. De eerste voorwaarde is dat je alleen een provincie uit de lijst kunt kiezen als de cel die de plaats bevat (C6) leeg is. Daarnaast is het ook zo dat je alleen een plaats kunt kiezen die in de gekozen provincie ligt.

Deze twee voorwaarden kun je met gegevens validatie opnemen. Dit werkt als volgt.

• Selecteer
C6 en kies tabblad Gegevens > Gegevensvalidatie > Gegevensvalidatie... .
• Kies bij
Toestaan: voor Lijst en vul bij Bron: de volgende formule in: =ALS($B$6="";"";INDIRECT($B$6)).

Hiermee is aan de eerste voorwaarde voldaan.

• Selecteer
B6 en kies tabblad Gegevens > Gegevensvalidatie > Gegevensvalidatie... .
• Kies bij
Toestaan: voor Lijst en vul bij Bron: de volgende formule in: =ALS($C$6="";Provincies;0).

Hiermee is aan de tweede voorwaarde voldaan.



Hoe het werkt.

De formule bij de voorwaarde in C6, geeft aan dat als B6 leeg is (er is geen provincie gekozen), er geen lijst ("") getoond wordt. In het andere geval wordt er, via de functie INDIRECT($B$6) een lijst getoond met als naam de tekst in B6. Dat laatste moet altijd een provincie zijn, zodat de lijst de namen van alle plaatsen van die provincie bevat.

De formule bij de voorwaarde in B6, geeft aan dat als C6 leeg is (er is geen plaats gekozen), de lijst met provincies wordt getoond. In het andere geval wordt er niets getoond.

De tweede voorwaarden werken samen. Als C6 een plaatsnaam bevat kun je geen provincie kiezen. Een andere waarde invoeren geeft een foutmelding. Als B6 geen provincie bevat, kun je geen plaatsnaam kiezen. Als er wel een provincie is ingevoerd, kun je alleen een plaats uit de lijst kiezen.

Download
hier de versie voor Excel 2007.

!! De Engelstalige variant

De Engelse term voor
Gegevens validatie is:
Data Validation