Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: wazupti am Februar 01, 2017, 13:43:28

Titel: Textfilter nach Klammern Access 2016
Beitrag von: wazupti am Februar 01, 2017, 13:43:28
Hallo,
ich verzweifle gerade an Access 2016. Ich habe eine Tabelle mit dem Feld "Straße". Dort gibt es teilweise Inhalte, die einen Klammernausdruck enthalten. Beispiel: "Gartenstrasse (SW)"
Im Access 2010 konnte ich über den Textfilter --> Enthält nach den Klammerausdrücken suchen. Ich habe im Textfilter einfach ( angegeben. Im Access 2016 bringt er mir bei gleicher Ausführung eine Fehler, das falsche Operatoren verwendet wurden.
Kann mir jemand sagen, wie ich in der Tabelle nach den Klammerausdrücken suchen kann? Danke schon mal im Voraus.
Titel: Re: Textfilter nach Klammern Access 2016
Beitrag von: Lachtaube am Februar 01, 2017, 14:09:27
Ich kann nur vermuten, dass Access intern mit der Funktion BuildCriteria arbeitet, die in Verbindung mit runden Klammern innerhalb des Texts fehlerhaft (getestet mit A2007) ist. Beispiel aus dem VBA-Direktbereich:?BuildCriteria("Strasse", dbText, "Like Haupt*")
Strasse Like "Haupt*"

?BuildCriteria("Strasse", dbText, "Like Haupt* [*")
Strasse Like "Haupt* [*"

?BuildCriteria("Strasse", dbText, "Like Haupt* [*")
' Syntaxfehler - warum auch immer
Abhilfe kann man vermutlich nur erzielen, in dem man in einem Formular selbst erstellte Filterausdrücke verwendet.
Titel: Re: Textfilter nach Klammern Access 2016
Beitrag von: Joss am Februar 02, 2017, 15:42:08
Hallo wazupti,

ZitatAbhilfe kann man vermutlich nur erzielen, in dem man in einem Formular selbst erstellte Filterausdrücke verwendet.
oder du verwendest eine Abfrage und filterst mit dem Like-Operator:   Wie '*(*'

Übrigens bringt bei mir A2010 auch einen Fehler, wenn ich in einer Tabelle nach einer Klammer filtere. ;)

Gruß
Josef
Titel: Re: Textfilter nach Klammern Access 2016
Beitrag von: MaggieMay am Februar 11, 2017, 03:01:44
Hi,
Zitat' Syntaxfehler - warum auch immer
die eckigen Klammern gehören zu den Steuerzeichen beim Zeichenvergleich mit Suchmustern und müssen wohl, wenn sie als eigenständige Sonderzeichen verwendet werden sollen, speziell "maskiert" werden.
Näheres dazu sollte sich in der Access-Hilfe finden lassen.

PS:
Allerdings sollte hier nicht nach eckigen sondern nach runden Klammern gesucht werden, die Beispiele von Lachtaube waren hier also eher irreführend.
Bei runden Klammern versagt tatsächlich die BuildCriteria-Funktion, aber dies sollte sich wohl umgehen lassen, indem man sie gar nicht erst verwendet.
Titel: Re: Textfilter nach Klammern Access 2016
Beitrag von: Lachtaube am Februar 11, 2017, 08:14:13
Da ist mir wohl ein Fehler beim Editieren des Beitrags passiert. Der 3. Aufruf (Das ist der, der den Fehler auslöst) muss richtigerweise ?BuildCriteria("Strasse", dbText, "Like Haupt* (*") bzw. ?BuildCriteria("Strasse", dbText, "Wie Haupt* (*") lauten. Wenn man BuildCriteria mitteilt, dass eine Zeichenkette vorliegt, funktioniert das Kriterium auch mit runden Klammern.?BuildCriteria("Strasse", dbText, "Wie 'Haupt* (*'")
Strasse Like 'Haupt* (*'

?BuildCriteria("Strasse", dbText, "Wie ""Haupt* (*""")
Strasse Like "Haupt* (*"