Dropdownlist met voornamen beperkt na keuze achternaam

littlepete

Well-known Member
Joined
Mar 26, 2015
Messages
503
Office Version
  1. 365
Platform
  1. Windows
hallo :)

ik heb een userform waarin de gegevens van klanten filter of toevoeg.

hoe kan ik de dropdown list beperken van de voornamen tot die voornamen
van de mensen met de achternaam die ik er net voor heb gekozen? (en dus niet
de volledige lijst met voornamen)

kolom a: klantnummer
kolom b: achternaam
kolom c: voornaam

als ik dit kan, kan ik ook op dezelfde wijze (bv.) de taalcursussen die zij volgen
beperken tot de gekozen mensen...

bedankt !
peter, belgie
 
misschien kan je mij van elk onderdeel uitleggen waar t moet komen? (module - bij objecten van de pagina - bij een event handler - ...)
ik vind alvast voorlopig niet hoe t werkt...

thx !
peter
 
Upvote 0

Excel Facts

Can you AutoAverage in Excel?
There is a drop-down next to the AutoSum symbol. Open the drop-down to choose AVERAGE, COUNT, MAX, or MIN
ik heb zonet een hele uitleg gedaan en de macro erin gezet en NU IS ALLES VERDWENEN !!!!!!!!!!!!!!!!!!!!!!!!
hoe kan dat zoveel werk en alles weg ?????? waar is mijn reply ???

ik heb echtttttt geen zin om nu nog heeeeel die uitleg opnieuw te doen (sorry...)

dit is de macro:

Code:
Private Sub ComboBox5_Change() '                                                                      achternaam
Application.ScreenUpdating = False
If ComboBox5 <> "" Then
    Range("b4").Value = ComboBox5.Value
End If
Dim voonamen As Range
Range("lijsten!AG3:AG500").ClearContents
Range("lessen!c4").ClearContents
Set voornamen = Application.Intersect(ActiveSheet.UsedRange, Range("lessen!c6:c25000"))
voornamen.SpecialCells(xlCellTypeVisible).Copy Destination:=Range("lijsten!ag3")
Application.ScreenUpdating = True
End Sub

slechts één klein detail wil ik nog aanpassen:
als ik de naam kies uit de combobox lijst geen probleem
maar als ik de naam begin te tikken past hij de filter aan letter per letter
hoe schakel ik dat uit ???

sorry dat heel mijn uitleg verdwenen is :( maar de macro werkt goed !
peter.
 
Last edited:
Upvote 0
dankuwel Noodleski :) ik ga meteen op onderzoek :) de zon schijnt en kheb al één crash van de pc overleefd...
een nieuwe pc is op komst dan zijn allicht alle windows10-gevolg-problemen de baan uit :)
merci !
peter
 
Upvote 0
SOLVED !!!
ZALIG IS DAT
wat een verschil !!!! ik gebruik de TAB toets om naar het volgende invulveld te gaan en met deze event is dat perfect !!!
voor wie op zoek is naar een combobox waar de volgende invulbox afhangt van de vorige, ga uw gang en kopieer !

en voor Noodleski : zoooo hartelijk bedankt !!! :)
(ik weet niet of berichten hier als solved gemarkeerd worden...)

gegevenslijst: sheet lessen : kolom B : namen; kolom C : voornamen
extended filter: filter range : rij 4 - data : 6 tot einde
lijsten: sheet lijsten : AG hulpkolom voor voornamen

Code:
Private Sub ComboBox5_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 9 Then '9 = TAB toets
Application.ScreenUpdating = False
On Error Resume Next
'                                                                                                                               vorige keuze verwijderen
Sheets("lijsten").Range("AG3:AG500").ClearContents
Sheets("lessen").Range("C4").ClearContents
'                                                                                                                               als ingevuld in filter zetten
If ComboBox5 <> "" Then
    Range("b4").Value = ComboBox5.Value
End If
'                                                                                                                               filterlijst voornamen maken
Dim voornamen As Range
Set voornamen = Application.Intersect(ActiveSheet.UsedRange, Sheets("lessen").Range("c6:c25000"))
voornamen.SpecialCells(xlCellTypeVisible).Copy
Sheets("lijsten").Range("AG3").PasteSpecial xlPasteValues
'                                                                                                                              tellen hoeveel voornamen
Dim n As Integer
n = Worksheets("lijsten").Range("Ag:Ag").Cells.SpecialCells(xlCellTypeConstants).Count
'                                                                                                                              als één voornaam dan in filter zetten en combo
If n = 2 Then
    Combobox6.Value = Range("lijsten!ag3").Value
End If
Application.ScreenUpdating = True
End If
End Sub
 
Last edited:
Upvote 0
Hey Peter,

nee, topics als opgelost markeren wordt hier niet gedaan, maar je bovenstaande reactie maakt wel duidelijk dat dat het geval is.
Graag gedaan, maar ik denk toch dat je zelf het meeste verdienste hebt aan de uiteindelijke oplossing.

groeten,
N
 
Upvote 0

Forum statistics

Threads
1,214,833
Messages
6,121,868
Members
449,053
Latest member
Mesh

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top