• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

ComboBox koppelen

Status
Niet open voor verdere reacties.

wieter

Terugkerende gebruiker
Lid geworden
26 jun 2009
Berichten
1.128
Met onderstaande code trachtte ik 2 comboboxen aan elkaar te koppelen.
Code:
Private Sub WorkBook_Open()
UserForm1.Show
UserForm1.ComboBox1.List = Array("Leeuwarden", "Heerenveen")
If UserForm1.ComboBox1.Value = "Leeuwarden" Then
UserForm1.ComboBox2.List = Array("School1", "school2")
End If
If UserForm1.ComboBox1.Value = "Heerenveen" Then
UserForm1.ComboBox2.List = Array("School3", "school4")
End If
End Sub
Het is de bedoeling dat combobox2 gevuld wordt met data, afhankelijk van de waarde in combobox1
 
Zo zien de comboboxen dus nooit een wijziging. Doe het eens zo:
Code:
Private Sub ComboBox1_Change()
    Select Case UserForm1.ComboBox1.Value
        Case "Leeuwarden"
            UserForm1.ComboBox2.List = Array("School1", "school2")
        Case "Heerenveen"
            UserForm1.ComboBox2.List = Array("School3", "school4")
    End Select
End Sub

Private Sub UserForm_Initialize()
    UserForm1.ComboBox1.List = Array("Leeuwarden", "Heerenveen")
End Sub

De UserForm1.Show in Workbook_Open kan blijven staan. De rest kan weg.
 
Laatst bewerkt:
Bedankt Ed,
Ik had ondertussen ook een oplossing gevonden.
Wel niet zo compact als die van jou.
Toch bedankt voor je bereidwillige hulp.
 
Graag gedaan :)
Wil je dan ook even je post als opgelost markeren?
 
Iets compacter (maar even effektief):

Code:
Private Sub ComboBox1_Change()
    if combobox1.listindex>-1 then ComboBox2.List = Array(Array("School1", "school2"),Array("School3", "school4"))(combobox1.listindex)
End Sub

Private Sub UserForm_Initialize()
    ComboBox1.List = Array("Leeuwarden", "Heerenveen")
End Sub
 
@SNB
Zoals steeds verbaasd over de syntax die jij gebruikt.
Zeker de moeite om uit te testen en te doorgronden.
Bedankt
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan