Hallo
Ich habe folgende Konstellation:
Ein Haupt / Unterformular, das Hauptformular hat 3 Felder zum Filtern. Name Postcode und Ortschaft. Das Unterformular ist in Tabellenansicht und zeigt alle Felder der Kundentabelle, Firmenname, Zusatz, Name, Vorname, Strasse, Postcode, Ort, Tel usw. Die Datensatzquelle ist eine Abfrage. In dieser Abfrage habe ich ein das Textfeld KunName erstellt, das die Felder Firmenname, Zusatz, Name und Vorname zusammenfasst.
Mit meinem Code filtere ich nun die die Kunden nach nach eingegenben Werten in die Felder txtKun_NameSuche; txtKun_PLZSuche und txtKun_OrtSuche. Dies funktioniert soweit einwandfrei. Wenn ich nun nach einem Wert aus dem Feld KunName suche und dabei den Zusatz, Namen oder Vorname schreibe muss ich davor ein * schreiben. Dies ist logisch, doch für den Benutzer etwas umständlich. Was kann ich machen, damit der Benutzer nur einfach den Namen schreiben muss ohne ein *
Sub Suchen()
'Filterfuntion für Suchprozess
Dim strKrit As String, strSQL As String
strKrit = ""
If Not IsNull(Me!txtKun_NameSuche) Then strKrit = strKrit & " AND KunName LIKE '" & Me!txtKun_NameSuche & "*'"
If Not IsNull(Me!txtKun_PLZSuche) Then strKrit = strKrit & " AND kun_PLZ LIKE '" & Me!txtKun_PLZSuche & "*'"
If Not IsNull(Me!txtKun_OrtSuche) Then strKrit = strKrit & " AND kun_Ort LIKE '" & Me!txtKun_OrtSuche & "*'"
strSQL = "SELECT * FROM qryKundenSuch "
If strKrit <> "" Then strSQL = strSQL & "WHERE " & Mid(strKrit, 5)
Me!sfrKundenSuchListe.Form.RecordSource = strSQL
End Sub
Gruss Daniel
Hallo,
ein zusätzliches Sternchen vor dem Suchtext benutzen :
If Not IsNull(Me!txtKun_NameSuche) Then strKrit = strKrit & " AND KunName LIKE '*" & Me!txtKun_NameSuche & "*'"
If Not IsNull(Me!txtKun_PLZSuche) Then strKrit = strKrit & " AND kun_PLZ LIKE '*" & Me!txtKun_PLZSuche & "*'"
If Not IsNull(Me!txtKun_OrtSuche) Then strKrit = strKrit & " AND kun_Ort LIKE '*" & Me!txtKun_OrtSuche & "*'"
Hallo
Merci, manchmal sieht man den Wald vor lauter Bäume nicht! ;)
Gruss Daniel