AutoFilter: Einfach alle aktiven Filter farblich hervorheben bzw. zurücksetzen (MS EXCEL)

Vielnutzer umfangreicher Tabellen werden sicherlich die Funktion „AutoFilter“ von MS Excel kennen und — genauso wie ich — zu schätzen wissen. Obwohl äußerst praktisch, hat diese Funktion dennoch zwei lästige Macken. Macken, die gerade bei Tabellen mit vielen Spalten zum Tragen kommen: zum einen lässt sich unter gewissen Umständen nur schwer erkennen, wo ein AutoFilter überhaupt aktiv ist. Und zum anderen kann es unnötig umständlich werden, mehrere aktive Filter zurückzusetzen.

Wenn der AutoFilter bei euch ein Thema ist, dann lest weiter und erfahrt in diesem Beitrag, wie ihr ab jetzt in all euren Tabellen jeden aktiven Filter farblich hervorheben und mit nur einem Klick alle Filter auf ein mal zurücksetzen könnt.

Für Eilige: gleich weiter zur Lösung oder zur Installationsanleitung.

Immer up to date: Aboniere den RSS-Feed für die automatische Benachrichtigung über neue Artikel.

Die AutoFilter-Funktion und ihre Macken

Mit dem AutoFilter können Tabellen nach bestimmten Kriterien gefiltert werden, sodass nur jene Zeilen angezeigt werden, die diesen Kriterien entsprechen. Durch die parallele Anwendung mehrerer Filter können unterschiedliche Kriterien miteinander kombiniert werden — soviel zur allgemeinen Funktion1.

Jedoch sehe ich — wie eingangs bereits erwähnt — in der AutoFilter-Funktion auch zwei lästige Macken. Diese Macken und meine Workarounds dafür möchte ich euch im Folgenden vorstellen.

Aktive AutoFilter sind nicht immer deutlich zu erkennen

Um erst mal zu erkennen, DASS ein Filter aktiv ist, bietet MS Excel (zumindest) zwei Möglichkeiten: Zum einen findet sich in der Statusleiste der Hinweis, dass x von y Datensätzen gefunden wurden. Und zum anderen werden alle Zeilennummern im gefilterten Bereich blau dargestellt:

ALT
Aktive AutoFilter erkennen: Statusleiste und blaue Zeilennummern. Weniger deutlich: welcher Filter genau aktiv ist.

Aber welche Filter konkret aktiviert sind, erkennt man nur an den jeweiligen Symbolen des Autofilters (Pfeil im Bild oben). Und diese können beispielsweise in Tabellen mit vielen schmalen Spalten oder auf kleinen Notebookmonitoren mit hohen Auflösungen schon mal untergehen.

Mir jedenfalls würde es besser gefallen, wenn sich aktive AutoFilter deutlicher hervorheben — beispielsweise durch ein Umfärben der Spaltenüberschrift.

Gleich weiter zur Lösung oder zur Installationsanleitung.

Das Zurücksetzen ALLER aktiven Filter ist unnötig umständlich

Auch das Deaktivieren aller aktiven Filter bzw. das Einblenden aller versteckten Spalten und Zeilen könnte einfacher sein.

Beruflich habe ich jeden Tag mit recht großen Tabellen (180 Spalten und mehr) zu tun. In diesen Tabellen nutze ich nicht nur die Filterfunktion sehr intensiv sondern blende — der Übersichtlichkeit wegen — auch immer wieder einzelne Spalten aus.

Diese meist verstreuten Filter und ausgeblendeten Spalten nach jeder Änderung händisch zurück zu setzen ist auf Dauer schon etwas umständlich2. Hier wäre ein eigener Befehl oder Button interessant, der das alles auf ein mal erledigt.

Gleich weiter zur Lösung oder zur Installationsanleitung.

Meine Workarounds

Als Workaround habe ich mir — nach einigen Recherchen im Internet — kurzerhand zwei benutzerdefinierte Funktionen geschrieben und in ein Excel-Add-In gepackt.

Hinweis: Dieses Add-In wird laufend weiterentwickelt und bietet neben den beiden hier beschriebenen Funktionen noch Weitere, auf die aber in diesem Beitrag nicht näher eingegangen wird.

Lösung 1: Aktive AutoFilter farblich hervorheben

Die benutzerdefinierte Funktion AF_KRIT(ZELLE) gibt „WAHR“ zurück, falls in der angegebenen Zelle ein AutoFilter aktiv ist. Diese Funktion kann in einer bedingten Formatierung dazu verwendet werden, um — abhängig vom Ergebnis — beispielsweise die Hintergrundfarbe der betroffenen Zelle zu verändern:

excel aktive autofilter farblich hervorheben
Derart farblich hervorgehobene Filter lassen sich auch in sehr kleinen Darstellungen mit einem Blick erfassen.

Die Idee und die Code-Basis kommen von Thomas Ramel.

Lösung 2: One-Button-Lösung zum Zurücksetzen aller aktiven Filter

Die benutzerdefinierte Funktion ResetAnzeige() setzt in der aktuellen Tabelle alle aktiven AutoFilter zurück, blendet alle versteckten Spalten und Zeilen ein und setzt den Cursor in die Zelle A1.

Wird diese Funktion mit einer eigenen Schaltfläche in die Schnellstartleiste verknüpft, lässt sich diese Aktion jederzeit mit nur eimem Mausklick ausführen:

MS Excel: Neuer Button: Setzt alle aktiven AutoFilter zurück und zeigt alle ausgeblendeten Spalten bzw. Zeilen wieder an -- mit nur einem Klick.
Neuer Button: Setzt alle aktiven AutoFilter zurück und zeigt alle ausgeblendeten Spalten bzw. Zeilen wieder an — mit nur einem Klick.

Installationsanleitung

Download

Das Excel-Add-In myFunctions.xlam steht im Downloadbereich in einem 7zip-Archiv samt Beispieldatei bereit. Dieses kann nach dem Herunterladen an beliebiger Stelle entpackt werden.

Installation

Damit das Add-In myFunctions.xlam verwendet werden kann, muss Excel erst einmal wissen wo dieses gespeichert ist. Die folgende Schritt-für-Schritt-Anleitung zeigt, wie zusätzliche Add-Ins in Excel verfügbar gemacht werden.

  1. Zum Verfügbar machen zusätzlicher Add-Ins, muss die Excel-Add-Ins-Verwaltung geöffnet werden:

    Aufruf der Excel-Add-Ins-Verwaltung.
    Aufruf der Excel-Add-Ins-Verwaltung.
  2. In der Verwaltung wird über den Button Durchsuchen... der Standardordner für die Microsoft Add-Ins geöffnet. Dorthin wird per Drag and Drop das entpackte Add-In myFunctions.xlam kopiert und ausgewählt (Add-In markieren und Öffnen anklicken):

    Auswählen und Verfügbar machen eines neuen Excel-Add-Ins.
    Auswählen und Verfügbar machen eines neuen Excel-Add-Ins.
  3. Das neue Add-In sollte jetzt in der Verwaltung aufscheinen. Mit dem Haken davor wird es aktiviert. Die Verwaltung kann jetzt mit OK geschlossen werden:

    Excel-Add-In aktivieren.
    Das neue Excel-Add-In aktivieren.
  4. Zum Test kann in einer beliebigen Zelle mit =myGetVersion() die Versionsnummer des Add-Ins ausgegeben werden:

    Funktionstest des gerade installierten Add-Ins: Ausgabe der Versionsnummer.
    Funktionstest des gerade installierten Add-Ins: Ausgabe der Versionsnummer.
Hinweis zur Installation von neuen Versionen: Neue Versionen können auf dem gleichen Weg installiert werden. Allerdings muss zuvor die alte Version in der Add-Ins-Verwaltung deaktiviert sein:
1. Entfernen des Hakens vor dem Add-In und
2. Bestätigung mit OK (Schließen der Add-Ins-Verwaltung).

Anschließend kann mit Schritt 1 dieser Anleitung fortgefahren werden.

Einrichten der Funktion „Filter farblich hervorheben“

Hinweis: Während der Tests ist mir aufgefallen, dass die benutzerdefinierte Funktion =AF_KRIT() in der bedingten Formatierung nicht verwendet werden kann, wenn sie in einem Add-In definiert wurde. Warum das nicht geht versuche ich gerade herauszufinden. Deswegen habe ich diese Funktion bis auf Weiteres in ein VBA-Modul ausgelagert. Dieses Modul (myAfKrit.bas) muss in jedes Dokument, in welchem die Hervorhebung genutzt werden soll, importiert werden.
  1. Um die Hervorhebung nutzen zu können, muss ein Arbeitsblatt mit AutoFiltern geöffnet sein:

    Ausgangslage für die Einrichtung und Nutzung  der farblichen Hervorhebung von aktiven Autofiltern.
    Ausgangslage für die Einrichtung und Nutzung der farblichen Hervorhebung von aktiven Autofiltern.
  2. In diesem werden alle Zellen markiert, die einen AutoFilter enthalten.
  3. Danach wird der Manager für Regeln zur bedingten Formatierung geöffnet und mit dem Button „Neue Regel...“ eine neue Regel erstellt:

    Alt
    Beschriftung
  4. Als Regeltyp Formel zur Ermittlung der zu formatierenden Zellen verwenden auswählen:

    ALT
    Beschriftung
  5. Und folgende Formel eingeben: =AF_KRIT(A1)=WAHR. „A1“ ist als die erste Zelle des markierten Bereiches mit AutoFilter entsprechend anzupassen.
  6. Auf „Formatieren…“ klicken und das gewünschte Format für die Darstellung eines aktiven AutoFilters einstellen.

Einrichten der Funktion „Alle Filter zurücksetzen“

Soll die neue Funktion zum Zurücksetzen aller Filter möglichst ohne Umwege erreichbar sein, ist der beste Platz dafür wohl eine Schaltfläche in der Symbolleiste für den Schnellzugriff:

MS Excel: Neuer Button: Setzt alle aktiven AutoFilter zurück und zeigt alle ausgeblendeten Spalten bzw. Zeilen wieder an -- mit nur einem Klick.
Neuer Button: Setzt alle aktiven AutoFilter zurück und zeigt alle ausgeblendeten Spalten bzw. Zeilen wieder an — mit nur einem Klick.

Diese Symbolleiste befindet sich entweder über oder unterhalb des Menübandes und zeigt ständig die wichtigsten Befehle an.

Neue Befehle werden über den Anpassungsdialog hinzugefügt. Dieser lässt sich am einfachsten über das Kontextmenü der Symbolleiste (Rechtsklick auf die Symbolleiste) aufrufen:

Excel: Dialog zum Anpassen der Symbolleiste für den Schnellzugriff per Kontextmenü aufrufen.
Dialog zum Anpassen der Symbolleiste für den Schnellzugriff per Kontextmenü aufrufen.

Mit den folgenden Schritten wird eine neue Schaltfläche zur Symbolleiste hinzugefügt und mit der benutzerdefinierten Funktion ResetAnzeige verknüpft:

  1. Unter „Befehle auswählen“ den Eintrag Makros auswählen,
  2. und den Befehl ResetAnzeige mit Hinzufügen >> zur Symbolleiste hinzufügen.
  3. Mit den Pfeiltasten wird die Position der neuen Schaltflächen verändert
  4. und über Ändern... die Schaltfläche mit einem besseren Symbol belegt.
Hinzufügen einer neuen Schaltfläche in die Symbolleiste für den Schnellzugriff mit der Funktion AutoReset.
Hinzufügen einer neuen Schaltfläche in die Symbolleiste für den Schnellzugriff mit der Funktion AutoReset.

Fußnoten

  1. Im Web gibt es genügend Anleitungen und Beispiele zur AutoFilter-Funktion, weswegen hier auf dessen genaue Arbeitsweise nicht näher eingegangen wird.
  2. Zwar gibt es die Möglichkeiten, alle Spalten auf einmal einzublenden und alle Filter auf ein mal zu deaktivieren, aber schnell geht anders.
14 Comments

Add a Comment

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert