mein Problem ist ein Sub in dem über eine "And-Verknüpfung" mit mehren Argumenten eine Tabelle nach einem Datensatz durchsucht wird. Dazu habe ich wie unten im Quellcode zu sehen eigentlich vor, dass es die Daten der gefundenen Zeile mit den Eingaben überprüft und dann erst in der Listbox ausgibt. Doch bis jetzt sucht er nur in der über den Firmenname und beachtet die anderen beiden Eingaben überhaupt nicht.
Hättet ihr eine Idee wie das zu verwirklichen wäre?
Ich hoffe auf eure schnelle Hilfe.
Mein bisheriger Quellcode:
Private Sub CommandButtonKundenSuchen_Click()
Dim SuchbereichFirma As Range, Firmenspalte As Range, Firmenname As String
Dim SuchbereichNachname As Range, Nachnamenspalte As Range, Nachname As String
Dim SuchbereichPLZ As Range, PLZspalte As Range, PLZ As String
Arbeitsmappe.showSpecificSheet (Defines.getKundendaten)
Worksheets("Kundendaten").Select
Firmenname = TextBoxKundenFirma
Set SuchbereichFirma = Range("B4", Range("B4").End(xlDown))
Set Firmenspalte = SuchbereichFirma.Find(what:=Firmenname, MatchCase:=False, lookat:=xlPart) _
Nachname = TextBoxKundenNachname
Set SuchbereichNachname = Range("E4", Range("E4").End(xlDown))
Set Nachnamenspalte = SuchbereichNachname.Find(what:=Nachname, MatchCase:=False, lookat:= _
xlPart)
PLZ = TextBoxKundenPLZ
Set SuchbereichPLZ = Range("I4", Range("I4").End(xlDown))
Set PLZspalte = SuchbereichPLZ.Find(what:=PLZ, MatchCase:=False, lookat:=xlPart)
If PLZspalte = Range("I4", Range("I4").End(xlDown)).Find(what:=PLZ, MatchCase:=False, _
lookat:=xlPart) And Nachnamenspalte = Range("E4", Range("E4").End(xlDown)).Find(what:=Nachname, MatchCase:=False, lookat:=xlPart) And Firmenspalte = Range("B4", Range("B4").End(xlDown)).Find(what:=Firmenname, MatchCase:=False, lookat:=xlPart) Then
With ListBoxKundenEinträge
.AddItem (0)
.List(.ListCount - 1, 0) = Firmenspalte
End With
Else
With ListBoxKundenEinträge
.AddItem (0)
.List(.ListCount - 1, 0) = "Keinen Eintrag gefunden"
End With
End If
End Sub
Gruß
Martin