Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Autofilter in einer Tabelle: Alles zeigen

Autofilter in einer Tabelle: Alles zeigen
23.10.2007 08:33:37
Peter
Guten Tag
Ich habe eine Tabelle, in der in mehreren Spalten Autofilter gesetzt sind. Nun möchte ich gerne mittels Klick auf einen Button erreichen können, dass alles angezeigt wird, manuell muss jeder Filter angewählt werden und "(alles") angewählt werden.
Wie kann das realisiert werden?
Danke für eine Rückmeldung.
Peter

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter in einer Tabelle: Alles zeigen
23.10.2007 08:36:28
ABO
Hallo Peter

Private Sub CommandButton1_Click()
ActiveSheet.ShowAllData
End Sub


Gruß ABO

AW: Autofilter in einer Tabelle: Alles zeigen
23.10.2007 09:21:43
Peter
Hallo ABO
Weil ich den Makro einem Button zuordnen will, habe ich daraus folgendes abgeleitet:

Sub Filter_aus()
Sheets("Detailplanung").Activate
ActiveSheet.AutoFilter.ShowAllData
End Sub


Da kommt die Fehlermeldung "Objekt unterstützt diese Eigenschaft nicht".
Was ist zu tun?

Anzeige
AW: Autofilter in einer Tabelle: Alles zeigen
23.10.2007 09:31:50
ABO
Hallo Peter
Füg in die Mappe „Detailplanung“ doch einfach nur einen Command Button ein mit folgendem Code:
ActiveSheet.ShowAllData
Gruß ABO

Mache es wie von Claus empfohlen
23.10.2007 09:40:19
Claus
Hallo Abo,
Claus hat dir ja schon beschrieben, wie Du die Standard-Schaltfläche in die Symbolleiste einbinden kannst. Das ist wohl der einfachste und "kompatibelste" Weg. Hier nochmal als Grafik :
Userbild
Gruß, NoNet

Anzeige
AW: Autofilter in einer Tabelle: Alles zeigen
23.10.2007 09:32:50
Claus
Wie gesagt, man diesen Makro keinem button zuordnen, weil es diesen Button im Standart schon gibt. (Höchstens du hast eine Version ohne?)
Es ist der von NONet bschriebene Befehl "Daten - Filter - alle anzeigen"

AW: Autofilter in einer Tabelle: Alles zeigen
23.10.2007 08:47:00
Claus
Hallole,
es gibt doch auch eine Schaltfläche "Alle anzeigen", die genau das macht.
Ansicht - Symbolleisten - anpassen - im Reiter Befehle: - Daten - alle anzeigen
Grüßle Claus

Anzeige
Menü "Daten - Filter - Alle anzeigen" _oT
23.10.2007 09:25:00
NoNet
_oT = ohne Text

AW: Menü "Daten - Filter - Alle anzeigen" _oT
23.10.2007 09:33:26
Peter
HalloNoNet
Mit dem Makrorecorder habe ich das Anwählen von "Daten - Filter - Alle anzeigen" aufgezeichnet und davon den einfachen Code abgeleitet.

Sub Filter_aus()
ActiveSheet.ShowAllData
End Sub


Der Code funktioniert allerdings nur, wenn tatsächlich ein Filter gesetzt ist. Wie kann ich nun abfragen, ob überhaupt ein Filter gesetzt ist. Wenn dies der Fall ist, darf der Code nicht ausgeführt werden, da sonst eine Fehlermeldung erscheint.
Gruss, Peter


Sub Filter_aus()
ActiveSheet.ShowAllData
End Sub


Anzeige
Per VBA : Prüfen, ob Liste gefiltert ist
23.10.2007 09:43:00
NoNet
Hallo Peter,
mit If ActiveSheet.Filtermode then kannst Du prüfen, ob Datensätze in der Tabelle gefiltert wurden (mit Autofilter oder Spezialfilter !).
Mit If Activesheet.Autofiltermode then prüfst Du, ob Autofilter aktiviert sind (das bedeutet jedoch noch nicht, dass auch Datensätze gefiltert wurden !).
Für Deinen Fall trifft die erste Lösung zu !
Gruß, NoNet

Anzeige
AW: Per VBA : Prüfen, ob Liste gefiltert ist
23.10.2007 10:16:00
Peter
Hallo NoNet
Vielen Dank. Mit deiner Hilfe bin ich am Ziel angekommen.
Peter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Autofilter in Excel: Alle Daten anzeigen


Schritt-für-Schritt-Anleitung

Um mit dem Autofilter in Excel alle Daten anzuzeigen, kannst Du einen Button erstellen, der den folgenden VBA-Code ausführt:

Private Sub CommandButton1_Click()
    ActiveSheet.ShowAllData
End Sub
  1. Öffne Deine Excel-Datei und füge einen Button (Command Button) hinzu.
  2. Rechtsklicke auf den Button und wähle „Code anzeigen“.
  3. Füge den obigen Code ein.
  4. Schließe den VBA-Editor und teste den Button.

Falls Du eine bestimmte Tabelle (z.B. "Detailplanung") ansprechen möchtest, kannst Du den Code wie folgt anpassen:

Sub Filter_aus()
    Sheets("Detailplanung").Activate
    ActiveSheet.ShowAllData
End Sub

Häufige Fehler und Lösungen

Einer der häufigsten Fehler beim Einsatz des Autofilters ist die Fehlermeldung „Objekt unterstützt diese Eigenschaft nicht“. Dies tritt auf, wenn der Autofilter nicht aktiviert ist oder wenn keine Filter gesetzt wurden. Um dies zu vermeiden, kannst Du vor dem Aufruf von ShowAllData prüfen, ob ein Filter aktiv ist:

Sub Filter_aus()
    If ActiveSheet.FilterMode Then
        ActiveSheet.ShowAllData
    Else
        MsgBox "Es sind keine Filter aktiv."
    End If
End Sub

Alternative Methoden

Es gibt mehrere Möglichkeiten, alle Daten anzuzeigen, ohne VBA zu verwenden:

  1. Menüoption: Gehe zu „Daten“ > „Filter“ > „Alle anzeigen“.
  2. Symbolleiste anpassen: Füge die Schaltfläche „Alle anzeigen“ zur Symbolleiste hinzu. Gehe dazu auf „Ansicht“ > „Symbolleisten“ > „Anpassen“ und suche unter „Befehle“ nach „Daten - alle anzeigen“.

Praktische Beispiele

Hier sind einige praktische Beispiele für den Einsatz des Autofilters:

  • Beispiel 1: Du hast eine Tabelle mit Verkaufsdaten und möchtest nur die Verkaufszahlen eines bestimmten Produkts anzeigen. Setze den Autofilter auf die entsprechende Spalte und wähle das Produkt aus.
  • Beispiel 2: Wenn Du mehrere Filter gleichzeitig anwenden möchtest, kannst Du dies ebenfalls über den Autofilter tun. Klicke in die Spaltenüberschrift und wähle die gewünschten Kriterien aus.

Tipps für Profis

  • Verwende ActiveSheet.AutoFilter nur, wenn Du sicher bist, dass der Autofilter aktiviert ist. Ansonsten könnte es zu Fehlern kommen.
  • Experimentiere mit der Kombination von vba autofilter und if-Abfragen, um Deine Makros robuster zu gestalten. So kannst Du beispielsweise sicherstellen, dass der Autofilter nur dann zurückgesetzt wird, wenn er aktiv ist.
  • Halte Deinen VBA-Code sauber und gut dokumentiert, damit du ihn später leichter anpassen oder erweitern kannst.

FAQ: Häufige Fragen

1. Wie kann ich überprüfen, ob ein Autofilter aktiv ist?
Du kannst dies mit If ActiveSheet.AutoFilterMode Then prüfen. Damit stellst du sicher, dass der Autofilter aktiviert ist, bevor Du versuchst, ihn zu verwenden.

2. Was kann ich tun, wenn ShowAllData nicht funktioniert?
Überprüfe, ob tatsächlich ein Filter gesetzt ist. Wenn kein Filter aktiv ist, wird der Befehl ShowAllData nicht funktionieren und könnte eine Fehlermeldung auslösen. Verwende daher eine Abfrage wie If ActiveSheet.FilterMode Then, um dies zu überprüfen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige