AW: Listbox-Eintrag füllt Textboxen
02.10.2018 11:03:38
Patrick
Hallo und vielen Dank für die Antwort. Leider klappt es bisher nicht so wie ich mir das gedacht habe.
Habe den Code etwas umgestellt, da er mir sonst bei Auswahl eines Eintrages in der Listbox dieselbige geleert hat.
Nun bekomme ich aber einen Fehler für den Befehl
For Zeile = 2 To Zeile_L
Hier nochmal der umgestellte Code:
Private Sub TextBox1_Change()
Dim rng As Range, strFirst As String
If Len(TextBox1) Then
ListBox1.Clear
With Sheets("QuelleBanken")
Set rng = .Range("A2:A25000").Find(What:=TextBox1, LookIn:=xlValues, LookAt:=xlPart, _
MatchCase:=False, After:=.Range("A25000"))
If Not rng Is Nothing Then
strFirst = rng.Address
Do
ListBox1.AddItem rng.Text
Set rng = .Range("A2:A25000").FindNext(rng)
Loop While Not rng Is Nothing And strFirst rng.Address
End If
End With
End If
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Textbox1 = Textbox in die der Suchbegriff eingegeben wird
Dim wks As Worksheet
Dim Zeile As Long, Zeile_L As Long
Dim arrWerte()
'Listbox mit Auswahlwerten füllen
Set wks = Worksheets("QuelleBanken")
With wks
'letzte Zeile mit Inhalt in Spalte B
Zeile_L = .Cells(.Rows.Count, 2).End(xlUp).Row
End With
With Me.ListBox1
'.Clear
For Zeile = 2 To Zeile_L
'Wert in Spalte B mit Suchwert in Textbox vergleichen
If wks.Cells(Zeile, 2).Value = Me.TextBox1.Value Then
.AddItem wks.Cells(Zeile, 1).Text
.List(.ListCount - 1, 1) = Zeile
End If
Next
End With
End Sub
Private Sub ListBox1_Click()
'Werte zum Listbox-Eintrag aus Tabellenblatt in Textboxen einlesen
Dim wks As Worksheet
Dim Zeile As Long
Dim iItem As Integer
Set wks = Worksheets("QuelleBanken")
With Me.ListBox1
iItem = .ListIndex
If iItem = -1 Then Exit Sub
Zeile = .List(iItem, 1)
Me.TextBox2 = wks.Cells(Zeile, 3).Text 'Wert aus Spalte C
Me.TextBox3 = wks.Cells(Zeile, 4).Text 'Wert aus Spalte D
End With
End Sub