ich bin neu hier und verzweifelt auf der Suche für die Lösung meines VBA-Problems und hoffe, dass mir jemand weiterhelfen kann.
Ich habe eine Tabelle (mehrere Zeilen und Spalten) in der ich alle Zeilen mit einem bestimmten Namen suchen suchen möchte und anschließend mir diese Treffer mit allen Spaltenergebnissen in einer Listbox einer UserForm anzeigen lassen, also ähnlich wie:
Tier - Fellfarbe - Alter
Hund - rot - 4
Katze - rot - 6
Hund - schwarz - 4
-> Wenn ich nach "Hund" suche sollen 2 Zeilen mit den jeweiligen Attributen erscheinen.
Der Code unten zeigt mir jedoch immer nur einen Treffer an, also mit dem obigen Beispiel "Hund - schwarz - 4".
Wo liegt der Fehler bzw. wie kann ich ihn beheben?
Vielen Dank!
________________________________________________________
Private Sub cmd_Search_Click()
Dim rngCell As Range
Dim strFirstCompany As String
Dim vTemp(3, 19) As Variant
Dim iSpalte As Integer
With Worksheets("Pipeline").Range("D:D")
Me.ListBox1.Clear
Set rngCell = .Find(Me.txt_search.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not rngCell Is Nothing Then
strFirstCompany = rngCell.Address
Do
With UserForm1.ListBox1
.ColumnCount = 18
For iSpalte = 2 To 19
vTemp(0, iSpalte - 2) = ThisWorkbook.Worksheets("Pipeline").Cells( _
rngCell.Row, iSpalte).Value
Next iSpalte
.AddItem
.Column = Application.Transpose(vTemp)
End With
Set rngCell = .FindNext(rngCell)
Loop While Not rngCell Is Nothing And rngCell.Address strFirstCompany
Else
MsgBox "Company Not Found", 48
End If
End With
Erase vTemp
End Sub