Waarde opzoeken in ander werkblad via Userform

Status
Niet open voor verdere reacties.

ericje85

Gebruiker
Lid geworden
11 aug 2008
Berichten
31
Hallo allen,
Met geringe kennis van VBA ben ik al een tijdje aan het puzzelen om via Excel met een Userform handig een soort database te bouwen. Dat gaat tot nu toe aardig, maar ik loop vast op het volgende:

Via een Userform dat geactiveerd wordt via één werkblad kan ik nu met een combobox een lijst opvragen met namen. Vervolgens wil ik in een textbox ernaast dat hij dan automatisch een bijbehorende afkorting zoekt. De namen en bijbehorende afkortingen staan in 2 aangrenzende kolommen een ander werkblad weergeven. Ik wil dus dat hij daar automatisch gaat zoeken naar de juiste naam en dan in het textbox de bijbehorende afkorting geeft. Hier kom ik niet, geen idee of dit nu het beste werkt met VLookup, Index of Match en hoe dit te programmeren via VBA.

Ik heb er tot dusver dit van gebrouwd, waarbij hij een foutmelding blijft geven:

Code:
Private Sub BehandelaarComboBoxBEH_Change()
If BehandelaarComboBoxBEH.Value = "" Then
    Me.BEHCodeBox.Text = ""
    Exit Sub
    Else
Nummer = Val(BehandelaarComboBoxBEH)

With Sheets("Overzicht Behandelaars")

 Me.BEHCodeBox = Sheets("Overzicht Behandelaars").Range("B:B"), Sheets("Overzicht Behandelaars").Match(Nummer, .Range("A:A"), 0))
End With
    End If

End Sub

Kan iemand mij verder helpen?
Hartelijk dank!

Groet,
Eric
 
Ter info: het werkblad 'overzicht behandelaars' is dus het werkblad waar ik wil dat hij gaat zoeken in kolom A naar de naam van de persoon en in kolom B dan de afkorting opzoekt. Het zijn allen unieke waardes.
BehandelaarComboBoxBEH = de comboxbox met de lijst van deze namen.
En BEHCodeBox is de textbox waar ik wil dat hij de afkorting weergeeft in het Userform.
 
Ik ben weer eens veel te voorbarig en ondoortastend geweest. Zelf nog even aan het puzzelen geweest, en het is al gelukt!
Dus mijn eigen vraag bij deze beantwoord! :)

Oh, en voor de geïnteresseerden. Dit is uiteindelijk de code geworden die werkt:

Code:
Private Sub BehandelaarComboBoxBEH_Change()
If BehandelaarComboBoxBEH.Value = "" Then
    Me.BEHCodeBox.Text = ""
    Exit Sub
    Else
On Error Resume Next
    With ['Overzicht Behandelaars'!A:A]
        BEHCodeBox.Text = .Find((BehandelaarComboBoxBEH.Value), LookIn:=xlValues).Offset(, 1).Value
    End With
    End If

End Sub
 
Laatst bewerkt:
Beste,

Graag een voorbeeldbestand zodat we de code kunnen toepassen in een eigen project.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan