• 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

Status
Niet open voor verdere reacties.

wally1968

Gebruiker
Lid geworden
26 dec 2007
Berichten
132
Bekijk bijlage Probeersel.xls

Hoi allemaal,

In het bijgevoegd bestandje zit een userform met combobox
in die combobox kan ik namen kiezen die in kolom A staan
In die kolom B staan de adressen
Hoe kan ik ervoor zorgen dat die adressen automatisch worden ingevuld in die userform
 
Dat kan o.a met vlookup.
Door de volgende code in de change event van de keuze lijst te zetten wordt steeds het juiste adres getoond

Code:
Private Sub naam_Change()
Me.TbAdres = Application.WorksheetFunction.VLookup(Me.naam, Range("adres"), 2)
End Sub
Zie bijlage
Bekijk bijlage Probeersel.xls
Het gebruik is hetzelfde als de werkblad functie vert.zoeken.
Zie daarvoor de helpfunctie
Mvg Leo
 
Ter aanvulling
Het bereik naam en adres heb benoemd als "adres"
Wellicht ten overvloed, maar je kunt de kolommen ook namen geven en vervolgens de lijsten vullen met dit bereik m.b.v. de eigenschap rowsource.

Mvg Leo
 
Is toch nog niet opgelost. Ik moet kolommen A en B kunnen aanvullen en dat gaat nu niet want ik krijg een foutmelding
 
Lijkt het je dan niet handig die fout er bij te vermelden?
 
deze komt dan in het geel te staan
Me.TbAdres = Application.WorksheetFunction.VLookup(Me.naam, Range("adres"), 2)
 
Het valt me op dat de VLookup "VERT.ZOEKEN" nooit afgemaakt wordt.
Het argument "benaderen" wordt door veel Excellers vergeten.
Als de rangschikking niet alfabetisch is en benaderen wordt weggelaten, krijg je verkeerde gegevens retour.
Type in A2 maar eens een naam met een Z.
 
Laatst bewerkt:
Ik heb dat gedaan in cel A2 iets ingegeven met een Z en dan blijft dit werken.
Maar als ik in de cellen A5 en B5 iets ingeef dan krijg ik die foutmelding
 
En welk resultaat krijg je dan in je textbox?

Voor de foutmeling.
Je bereik uitbreiden bij gedefiëerde namen.
Of met een verschuiving werken.
 
Waarom werkbladfuncties gebruiken als VBA zelf de benodigde functie bevat ?
Code:
Private Sub UserForm_Initialize()
    With Sheets("Blad1")
        sq = .Range("A2:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
    End With
    Me.naam.List = sq
End Sub

Private Sub naam_Change()
    Me.TbAdres = Sheets("Blad1").Columns(1).Find(Me.naam, , xlValues, xlWhole).Offset(, 1).Value
End Sub
 
Veel zal je niet geprobeerd hebben want echt moeilijk was dit niet.:confused:
Code:
Private Sub naam_Change()
    With Sheets("Blad1").Columns(1).Find(Me.naam, , xlValues, xlWhole)
        Me.TbAdres = .Offset(, 1).Value
        Me.gemeente = .Offset(, 2).Value
    End With
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan