Tekstvelden vullen na selectie in combobox

Status
Niet open voor verdere reacties.

JacquesL

Gebruiker
Lid geworden
16 jan 2018
Berichten
78
Goedemiddag,

Ik ben nieuw hier en ook net begonnen om VBA onder de knie te krijgen.

Nu heb ik de volgende vraag. Ik wil graag dat de tekstvelden gevuld worden als ik een naam selecteer in de keuzelijst. De nieuwe data wordt wel goed aangevuld in het Excel blad. Ook wordt de keuzelijst verder aangevuld als er nieuwe data wordt ingevoerd. Echter als ik al een bestaande (in dit geval een naam) aanklik in de keuzelijst blijven de tekstvelden met bijbehorende data leeg.
Ik heb hieronder de VBA code geplaatst.
--------------------------------------------------------------------------------
Private Sub cmdSluiten_Click()
Unload Me
End Sub

Private Sub cmdToevoegen_Click()
Dim VolgendeRij As Long

If txtNaam = "" Then
MsgBox "U moet een naam invoeren.", vbExclamation
txtNaam.SetFocus
Exit Sub
End If

VolgendeRij = Application.WorksheetFunction.CountA(Range("A:A")) + 1

Cells(VolgendeRij, 1) = txtNaam.Text
Cells(VolgendeRij, 2) = txtAdres.Text
Cells(VolgendeRij, 3) = txtPostcode.Text
Cells(VolgendeRij, 4) = txtWoonplaats.Text

End Sub

Private Sub txtNaam_Change()

End Sub

Private Sub UserForm_Initialize()
cboKlantnaam.RowSource = Sheets("Blad1").Range("A1", Range("A100").End(xlUp)).Address
End Sub
----------------------------------------------------------------------------------------------

Alvast bedankt.
Jacques
 
Code:
Private Sub ListBox1_Click()
    For i = 0 To 4
      Me("txt" & i) = ListBox1.Column(i)
    Next
End Sub
Vervang ListBox1 door de naam van uw keuzelijst

Edit;
Welkom op het forum:)
Maak er een gewoonte van om
1 je code tussen codetags te plaatsen, via de # knop
2 een voorbeeldbestandje te posten, klik op Ga geavanceerd en dan op de paperclip.
 
Laatst bewerkt:
Hallo gast0660,

Allereerst bedankt voor je snelle reactie. Ik zal jouw gewoontes ter harte nemen.
Maar ik krijg een foutmelding als code toevoeg. Nogmaals ik ben echt een beginner en ik wil deze VBA verder uitbreiden, echter niet eerder als mijn vraag opgelost is. Ik heb nu het bestandje bijgevoegd. De foutmelding zit hier nog in (voor het gemak).

Alvast bedankt weer
Jacques
 

Bijlagen

  • Klantnaam.xlsm
    30,6 KB · Weergaven: 55
Kan je hier wat in(tran)spiratie uit halen?:)
 

Bijlagen

  • ledenlijst.zip
    643,1 KB · Weergaven: 44
Hoi gast0660,

Ziet er geweldig uit, maar het is niet helemaal de bedoeling. Ik weet dat dit geen leerschool is, althans dat denk ik. Maar ik wil het graag zelf leren, Dus als je me nog zou kunnen helpen met het stukje VBA code in mijn voorbeeld zou ik je zeer erkentelijk zijn.

Thanks
 
Zo dan? (heel behapbare code;))
Code:
Private Sub UserForm_Initialize()
cboKlantnaam.RowSource = Sheets("Blad1").Range("A1", Range("[COLOR="#FF0000"]D[/COLOR]100").End(xlUp)).Address
End Sub
en
Code:
Private Sub cboKlantnaam_Click()
 txtNaam.Text = cboKlantnaam.Column(0)
 txtAdres.Text = cboKlantnaam.Column(1)
 txtPostcode.Text = cboKlantnaam.Column(2)
txtWoonplaats.Text = cboKlantnaam.Column(3)
End Sub
 
Om binnen het eigen projectje te blijven en toch wat leermomenten op te doen.:)

Gebruik geen RowSource en geef de textboxen gewoon een opvolgend nummer.
 

Bijlagen

  • Klantnaam.xlsb
    20,9 KB · Weergaven: 84
@Vena,
Gebruik geen RowSource en geef de textboxen gewoon een opvolgend nummer.
Klopt als een zwerende vinger.
Maar
als je me nog zou kunnen helpen met het stukje VBA code in mijn voorbeeld
Misschien ben ik te braaf of te lomp?
Waarschijnlijk het tweede:(
 
@gast0660, ik zie er niets lomps in. Het was alleen een aanvulling voor de TS. Een beetje een mix tussen het volledige formulier in #4 en hoe het wat minder complex ook kan in het formulier van de TS.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan