Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: thorstens1304 am Juli 09, 2012, 17:51:41

Titel: Filter setzen
Beitrag von: thorstens1304 am Juli 09, 2012, 17:51:41
Hallo,

was ist an meinem Beispiel falsch?

    Me.Filter = "LicenseProgram = '*" & Me!Filter_LicenseProgram & "*' AND ProductGroup = '*" & Me!Filter_ProductGroup & "*'"
    Me.FilterOn = True 'Filter einschalten


Ich möchte beim Feld "LicenseProgram" genau den angegebenen Wert gefiltert bekommen und bei "ProductGoup" alle Datesätze die in dem Feld diesen Wert (oder mehr) beinhalten.

Mein Ergebnis ist aber immer leer. Wer kann mir helfen?
Titel: Re: Filter setzen
Beitrag von: MzKlMu am Juli 09, 2012, 18:09:27
Hallo,
Textvergleiche mit dem Joker (*) müssen mit Like (Wie) gemacht werden. Das = funktioniert nur bei exakter Übereinstimmumng.

Me.Filter = "LicenseProgram Like '*" & Me!Filter_LicenseProgram & "*' AND ProductGroup Like '*" & Me!Filter_ProductGroup & "*'"

Wenn für LicenseProgram genaue Übereinstimmung gefordert ist, müssen die Joker weg. Dann kann auch = verwendet werden.

Also so:
Me.Filter = "LicenseProgram = '" & Me!Filter_LicenseProgram & "' AND ProductGroup Like '*" & Me!Filter_ProductGroup & "*'"

Zitatund bei "ProductGoup" alle Datesätze die in dem Feld diesen Wert (oder mehr) beinhalten.
Wenn hier wirklich mehrere Produktgruppen in einem Feld stehen, ist das Datenmodell falsch. Üblicherweise würde man auch nicht über den Klartext filtern, sondern mit dem hoffentlich vorhandenen Primärschlüssel.