Katzenkind
Mitglied
Ich habe jetzt bei meiner Suchfunktion eine Fragmentsuche eingebaut, funktioniert eigendlich ganz gut, bis auf das, das ich jetzt NUR mit Fragmenten suchen kann und keine einzelnen Wörter mehr, z.B. "Max Mustermann" kann ich suchen "Max" hingegen alleine nicht mehr. :suspekt:
Ich habe schon versuch eine If-Schleife zu machen mit:
"If suchen ="" Then
strSQL
End If"
Funktioniert leider nicht, also was soll ich tun damit beides funktioniert?
mfg Katzenkind
Mein Code:
Ich habe schon versuch eine If-Schleife zu machen mit:
"If suchen ="" Then
strSQL
End If"
Funktioniert leider nicht, also was soll ich tun damit beides funktioniert?
mfg Katzenkind
Mein Code:
Code:
Public Sub sucheNamen(name As String)
Dim rs As ADODB.Recordset
Dim dummy As Long
Dim suche As String
If name = "" Then Exit Sub
'Mauszeiger wird zu Stundenglas
Me.MousePointer = vbHourglass
'Erstellt ein neues Recordset
Set rs = New ADODB.Recordset
'Suchfunktion
'inStr sucht nach einem Leerzeichen und gibt dessen Position zurück
suche = Mid(name, 1, InStr(1, name, " ") - 1)
strSQL = "SELECT TOP " & txtMaxTreffer.Text & " * FROM namen WHERE Nachname LIKE '%" _
& suche & "%' OR Vorname LIKE '%" & suche & "%'"
'Recordset wird geoeffnet, ...
rs.Open strSQL, con, adOpenDynamic, adLockPessimistic
Me.Caption = "Namen, Gefunden: " & rs.RecordCount
Call GridEinstellung
dummy = 0
Do While Not rs.EOF
dummy = dummy + 1
grdErgebnis.AddItem rs!ID & vbTab & rs!Vorname & vbTab & rs!Nachname, 1
rs.MoveNext
If dummy >= 200 Then Exit Do
Loop
'recordset wird beendet
rs.Close
'Mauszeiger wird wieder "normal"
Me.MousePointer = vbDefault
End Sub