Toon posts:

[Excel 2003] selectielijst afhankelijk maken van bep. waarde

Pagina: 1
Acties:
  • 411 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig in Excel en probeer het volgende voor elkaar te krijgen:

Ik maak via Data -> Valideren een selectbox gebaseerd op een lijst:

1
2
3


Nou wil ik een tweede selectbox maken waarbij de inhoud afhankelijk is van de waarde die in de eerste lijst is geselecteerd:

1a
1b
1c
2d
3e
3f

Met bovenstaand voorbeeld:
  • 1 geeft a, b en c
  • 2 geeft d
  • 3 geeft e en f
En wanneer de eerst gekozen waarde wordt geleegd moet ook de tweede box "gereset" worden. Ik heb al gekeken op google en in de help van MS, echter ik kan geen antwoord vinden.

Iemand die dit kan uitleggen?

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 08:16
Als het statische data zijn:
Maak voor iedere waarde in de dropdown een kolom aan.
bijvoorbeeld, in A1:C4 heb je dit:
123
ade
bf
c

Vervolgens:
In D1 staat de waarde van je eerste dropdown.
Zet dan in E2:
=IF(ISERROR(INDEX($A$2:$C$4,ROW(E1),$D$1)),"",INDEX($A$2:$C$4,ROW(E1),$D$1))
en trek die naar beneden.
(NL: IF-> ALS , ISERROR -> ISFOUT , INDEX -> INDEX?, ROW -> RIJ)
Daar staat vervolgens altijd het rijtje wat je voor dropdown 2 nodig hebt.

[ Voor 80% gewijzigd door onkl op 07-01-2005 15:02 ]


Verwijderd

Topicstarter
niet volledig statisch.... de waarden in kolom2 kunnen worden uitgebreid.

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 08:16
Sorry, had alweer op verstuur geragt zonder een serieus bericht.
Overigens, als het geen probleem is de data zo in te voeren kan je dit rustig uitbreiden. Alleen de $A$2:$C$4 wat uitbreiden.
Overigens, heb een ideetje wat beter werkt. is alleen niet erg uitlegbaar(teveel formules die in elkaar grijpen). Kan ik ergens een e-mailtje droppen?

Verwijderd

Topicstarter
Tuurlijk....

[e-mail adres verwijderd]

[ Voor 45% gewijzigd door Verwijderd op 07-01-2005 15:43 ]


Verwijderd

Topicstarter
ontvangen, bekeken en beantwoord:

Ik heb er even in "rondgeklikt". Wanneer in "valideer" eenmaal een waarde staat en "valideer 1" wordt aangepast zou "valideer 2" gereset moeten worden, omdat een niet correcte waarde zou kunnen blijven staan.

Test-scenario:

"Valideer 1" = 1, resulteert in a, b en c. Selecteer een van deze opties.
Pas "valideer 1" aan naar 3 (alleen e en f mogelijk) echter wanneer je niets doet met "Valideer 2" zal daar de eerder gekozen waarde blijven staan.

Beetje krom als ik het zo nalees, maar hoop dat het duidelijk is.

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 08:16
Dit is niet zonder macro's op te lossen,
in cel F5 staat FALSE als de combinatie niet klopt (met ISERROR(VLOOKUP) terugzoeken)
en dan de code:

Visual Basic:
1
2
3
4
5
6
7
8
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$9" Then
    If Range("$F$5").Value = False Then
        MsgBox "FOUT"
        Range("$F$10").Value = ""
    End If
End If
End Sub

(zie ook je mailbox)

Verwijderd

Topicstarter
gezien... checked!

Top, thnx. :D

Verwijderd

Topicstarter
Dank je wel voor alle effort tot nu toe. Ik heb de door jou verstuurde voorbeelden verwerkt in mijn eigen sheet, echter heb nog twee resterende puntjes, waar ik hoop dat jij me nog in kan/wil adviseren:

1. Het vb-script wordt niet afgevuurd in mijn bestand, wellicht heb ik de trigger nog niet goed ingesteld. Kan hem ook niet vinden...
2. Hoe kan ik (in mijn voorbeeld) de selecties over meerdere rijen heen gebruiken? Dit is een jaarbestand met bijzondere incidenten. Geschatte hoeveelheid rijen is 250.

(zie je mail voor het bestand)
Pagina: 1