Formularansicht filtern

Access bietet einige Möglichkeiten, um die Daten in Formularen zu filtern – zum Beispiel die Möglichkeiten, die auftauchen, wenn Sie das Kontextmenü eines Feldes in der Formularansicht anzeigen oder die Funktionen, die über das Ribbon zur Verfügung stehen. Wir schauen uns diese Möglichkeiten in diesem Artikel einmal im Detail an und schauen, wie wir diese Funktionen per VBA aufrufen können.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1806_FormulareFiltern.accdb.

Beispielformular

Für die Beispiele verwenden wir ein Formular namens frmArtikelFiltern, das wir mit der Tabelle tblArtikel als Datensatzquelle versehen und mit dem wir alle Felder dieser Tabelle anzeigen. Wenn wir das Formular in der Formularansicht anzeigen und dann mit der rechten Maustaste etwa auf das Textfeld Artikelname klicken, finden wir bereits verschiedene Filterfunktionen vor, die wir direkt anwählen können – zum Beispiel Ist gleich „Chai“ oder Ist ungleich „Chai“. Es gibt aber auch noch das Menü Textfilter, das weitere Befehle wie Gleich…, Nicht gleich…, Beginnt mit… und so weiter anbietet (siehe Bild 1).

Formular-Entwurf unseres Beispielformulars

Bild 1: Formular-Entwurf unseres Beispielformulars

Die Einträge im Hauptmenü filtern direkt mit Ausdrücken, die den aktuellen Wert als Vergleichswert enthalten, die im Untermenü ermöglichen die Anzeige eines kleinen Eingabefeldes, mit dem der Vergleichswert für die gewählte Option ausgewählt werden können. Hier können Sie dann beispielsweise den Wert eingeben, mit dem die zu suchenden Einträge für dieses Feld beginnen (siehe Bild 2). Nach der Eingabe des Vergleichswertes und dem Betätigen der OK-Schaltfläche wird der Filter genau wie bei den Schnellfiltern aus dem ersten Menü auf alle Datensätze des Formulars angewendet.

Eingabe eines Filtervergleichswertes

Bild 2: Eingabe eines Filtervergleichswertes

Was ist passiert

Was genau haben wir durch diese Aktion erledigt Wir haben einen Filter definiert und diesen auf die Daten des Formulars angewendet. Können wir irgendwie herausfinden, welcher Filterausdruck nun genau wirkt Ja, das geht – und zwar per VBA. Wir brauchen einfach nur den Wert der Eigenschaft Filter des Formulars auszugeben. Das gelingt etwa mit dem folgenden Befehl im Direktbereich des VBA-Editors (anzuzeigen über die Tastenkombination Strg + G):

Access [basics]

Unser exklusives Angebot für Dich!

Access im Unternehmen
7,90 € im Monat*

(Das Abo ist jederzeit monatlich kündbar)

Hier geht’s weiter →

Die ersten 4 Wochen kostenlos testen – voller Zugriff auf alle Artikel, vollständigen Code und Beispieldatenbanken. Kein Risiko: Wenn es nicht passt, kündigst Du einfach innerhalb der ersten vier Wochen.

PayPal VISA Mastercard SEPA
Kostenlos & unverbindlich

Oder hast Du eine konkrete Frage zu Deiner eigenen Access-Anwendung?

Vielleicht stellt Deine Anwendung Dich vor eine Herausforderung, zu der Du bisher keine Lösung findest. Schlechte Performance, kein ausreichender Zugriffsschutz, Du bist unsicher über Dein Datenmodell oder Dein Code liefert unerklärliche Fehler?

In unserem kostenlosen Access-Audit schaut sich André Minhorst persönlich gemeinsam mit Dir Deine Lösung per Zoom an – und zeigt Dir, wo Datenmodell, VBA-Code, Ergonomie und Sicherheit Optimierungspotenzial bieten.

Jetzt kostenloses Access-Audit anfordern →