Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Klaus S. aus B am April 04, 2013, 16:23:24

Titel: ZUsammengesetzter Filter fehlender Operator
Beitrag von: Klaus S. aus B am April 04, 2013, 16:23:24
Hallo zusammen,

wahrschein ein saudummer Anfängerfehler, aber ich hänge total.

Ich habe folgende Filterstring definiert:
Me.Filter = "[tbl_kd.Land_ID]=" & Nz([cbo_countr], "*") & " And " & "[tbl_klammer.kd_id]=" & Nz([lst_cust], "*")


Wenn ich bei beiden Kombo und LIste etwas auswähle, funktioniert der Filter perfekt.
Bleibt mindesten eines der beiden Felder leer, erhalte ich folgenden Fehler:
ZitatSyntaxfehler (fehlender Operator) in Abfrageausdruck '[tbl_kd.land_id]=* And [tbl_klammer.kd_id]=*'

* müsste doch als "Joker" ür eine Auswahl funktionieren, oder nicht?
???
Beide Felder sind Zahlen.

Gruß
Klaus
Titel: Re: ZUsammengesetzter Filter fehlender Operator
Beitrag von: bahasu am April 04, 2013, 19:44:58
Hi,

wenn Joker, dann nicht = sondern like

vermutlich stört das and:

"[tbl_kd.Land_ID]=" & Nz([cbo_countr], "*") & " And " & "[tbl_klammer.kd_id]=" & Nz([lst_cust],  

Du solltest Dir den Filter einzeln zusammenbauen und jeweils prüfen, ob in Deinen Feldern Inhalt ist.

Folgenden ungetestet:

Dim Bedingung as String

if Nz([cbo_countr]) > "" then Bedingung = " and [tbl_kd.Land_ID]=" & [cbo_countr]
if Nz([lst_cust]) > "" then Bedingung = Bedingung & " and [tbl_klammer.kd_id]=" & [lst_cust]

Bedingung = mid(Bedingung, 6)

If Bedingung > "" then Me.Filter = Bedingung

Harald

Titel: Re: ZUsammengesetzter Filter fehlender Operator
Beitrag von: Klaus S. aus B am April 05, 2013, 08:42:38
Hallo Harald,

das war der Tipp den ich gebraucht habe!  ;D

Vielen Dank!

Gruß
Klaus