In Access-Formularen wird regelmäßig Code zum dynamischen Erzeugen eines Filterausdrucks eingebaut. Wie Sie diesen Code übersichtlich gestalten, steht im Beitrag „SQL-Text für Filterbedingungen“ (S. 46). Damit die Filter-Klassen aus diesem Beitrag genutzt werden können, ist Code im Formular erforderlich. Mit diesem Code wird die Filterung ausgelöst und der Filterausdruck erzeugt. Außerdem müssen Sie die Klassen in ihre Anwendung einfügen. Diese Aufgaben nimmt Ihnen der ACLib-FilterForm-Wizard ab.
ACLib-FilterForm-Wizard
Der ACLib-FilterForm-Wizard ist ein Access-Add-In und wird mit dem Access-Add-In-Manager von Access in-stalliert. über den Add-In-Menüeintrag ACLib FilterForm Wizard öffnen Sie den Assistenten.
Nach Auswahl des Filterformulars wird der Assistent wie in Bild 1 dargestellt. Mit den drei Dropdown-Feldern im rechten oberen Bereich besteht die Möglichkeit, die Steuerelemente zum Anwenden der Filter, zum Löschen aller Filterwerte und das Steuerelement zum Aktivieren der automatischen Filterung festzulegen.

Bild 1: ACLib-FilterForm-Wizard – Ansicht nach Auswahl eines Formulars
Im mittleren Bereich FilterControls werden die Filterbedingungen und die dazugehörigen Steuerelemente mit den Filterwerten definiert. Im unteren Bereich sehen Sie, ob die benötigten Klassen bereits in Ihrer Anwendung sind. Sie können diese Klasse über den Assistent vorab in Ihre Anwendung einfügen, wenn Sie auf Klassen installieren klicken. Die Klassen werden automatisch eingefügt, sobald der Filtercode im Formular erstellt wird.
Wählen Sie in UseFilter-Methode die Code-Variante für die UseFilter-Prozedur. Die Auswahl Filter-Variante definiert die im Filterformular anzuwendende Klasse. Im Dropdown-Feld SQL-Dialekt legen Sie die benötigten SQL-Formate fest.
Mit Klick auf Formular-Code einfügen wird der Code zum Filtern in das ausgewählte Filterformular eingefügt.
Filterformular erstellen
Bevor Sie den FilterForm-Wizard öffnen, erstellen Sie ein Formular mit allen benötigten Steuerelementen zur Filterwerteingabe, zum Auslösen der Filter und so weiter. Falls Sie die gefilterten Daten in einem Unterformular darstellen wollen, fügen Sie ein Unterformularsteuerelement in das Formular ein. Vergessen Sie nicht, die Steuerelemente passend zu benennen.
Ein vorbereitetes Formular zum Ausprobieren des Assistenten ist in der Beispiel-Anwendung enthalten. Erstellen Sie eine Kopie vom Formular frmBestellUebersicht___00_ohne_Code. Für diesen Beitrag wurde die Kopie unter dem Namen frmBestellUebersicht___05_Variante_ueber_Wizard gespeichert.
Filterbedingungen definieren
Nach dieser Vorbereitung öffnen Sie den Assistenten und wählen Ihr Filterformular aus. Im Anschluss stellen Sie die Filterbedingungen und die benötigten Steuerelemente, wie in Bild 2 gezeigt, ein. Je Filterbedingung müssen Sie das zu filternde Datenfeld, den Datentyp, den gewünschten Vergleichsoperator und das Steuerelement mit dem Filterwert definieren. Die zur ersten Filterbedingung in der Abbildung passende Code-Zeile sehen Sie hier:

Bild 2: Filterbedingungen und Steuerelemente einstellen
.Add "KundenCode", SQL_Text, SQL_Like, Me.fctlKundenCode.Value
Wenn Sie die Checkbox xxx* aktivieren, wird im Code statt SQL_Like der Ausdruck SQL_Like + SQL_Add_WildCardSuffix eingefügt. Damit wird bei der Filterstring-Erstellung der Wert am Ende mit * ergänzt.
Neben dem Auswahlfeld des Filtersteuerelements ist ein Textfeld zur Eingabe weiterer Steuerelementnamen. Dieses Textfeld benötigen Sie zum Definieren einer Filterbedingung, bei der mehr als zwei Filtersteuerelemente benötigt werden.
Im Beispielformular werden aus den Steuer-elementen für die Datumsfilter Between-Filterausdrücke erstellt.
Aus dem Eintrag der Between-Filterbedingung in Bild 3 entsteht die folgende Code-Zeile:
.Add "Bestelldatum", SQL_Date, SQL_Between, _
Me.fctlBestelldatumAb.Value, _
Me.fctlBestelldatumBis.Value
Nur für Abonnenten
Ab hier wird’s wirklich spannend – der Rest ist exklusiv für Abonnenten.
Mit dem Abo von Access im Unternehmen bekommst du den kompletten Artikel – inklusive vollständigem Code, Beispieldatenbank und Schritt-für-Schritt-Erklärung.
So sparst du dir stundenlanges Herumprobieren, vermeidest teure Fehler in deiner Access-Anwendung und kannst Lösungen direkt in deinem Unternehmen einsetzen, statt nur darüber zu lesen.
Teste Access im Unternehmen jetzt 4 Wochen lang kostenlos: Voller Zugriff auf alle Artikel, Downloads und Beispieldatenbanken. Kein Risiko – wenn es für dich nicht passt, kündigst du einfach innerhalb der ersten vier Wochen.
Bereits Abonnent? Hier einloggen
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 →