Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
660to664
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
660to664
660to664
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Autofilter
07.09.2005 04:09:37
gnilk
Hallo Leute,
habe wieder mal ein Problem und brauche den VBA Code:
ich habe eine Tabelle. Manchmal ist der Autofilter Modus gesetzt ein anderes mal nicht. Ich will, dass mein VBA ueberprueft ob ein Autofilter gesetzt wurde. Wenn keiner gesetzt wurde soll VBA ihn setzen und falls ein Autofilter gesetzt wurde, so soll VBA ihn belassen.
Ich hab mir das mal so vorgestellt: (War natuerlich wieder zu naiv und hat nicht geklappt)
If Selection.FilterMode = False Then Selection.AutoFilter
Brauche Hilfe
Danke
Gnilk

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter
07.09.2005 06:53:11
Nepumuk
Hallo Gnilk,
versuch es mal so:
Public Sub test()
    If ActiveSheet.AutoFilterMode Then MsgBox "Es ist ein Filter in der Tabelle"
    If ActiveSheet.FilterMode Then MsgBox "Der Autofilter hat eine Liste gefiltert"
End Sub

Und benutzt doch mal die Hilfe, da steht das alles drin. Woher, meint ihr, weiß ich das? Auf alle Fälle nicht durch göttliche Eingebung.
Gruß
Nepumuk
Excel & VBA – Beispiele
Anzeige
@nepumuk
08.09.2005 02:02:14
gnilk
Lieber Nepumuk,
ich glaube Du hast meine Frage nicht wirklich gelesen, oder Deine Microsoft Hilfe ist defekt. Versteh das bitte nicht falsch, aber die Hilfe bringt mir in dem Fall gar nichts.
Ich will auch nicht Deine Excel-Faehigkeiten ankreiden, jedoch ist es nicht die Loesung meines Problems.
Ich will einen Autofilter setzen, wenn keiner gesetzt ist. Sollte jedoch schon einer gesetzt sein, so will ich dass es so bleibt. Ich will KEINE MsgBox.
Trotzdem vielen Dank fuer Deine Bemuehungen.
Ciao
Gnilk
AW: @nepumuk
08.09.2005 08:14:33
Nepumuk
Hallo Gnilk,
das war nur als Beispiel gedacht, wie du abfragen kannst ob ein Filter in der Tabelle ist. Da ich deinen Tabellenaufbau nicht kenne, kann ich dir kein fertiges Programm liefern.
Gruß
Nepumuk
Anzeige
AW: Autofilter
07.09.2005 07:06:49
Christoph
Hallo,
der folgende Code aktiviert den Autofilter. Es werden jedoch keine Filter gesetzt.
If Not Worksheets(1).AutoFilterMode Then Worksheets(1).Cells.AutoFilter
oder auch:
If Not ActiveSheet.AutoFilterMode Then Selection.AutoFilter
beide Zeilen erzeugen einen Fehler, wenn der Bereich keine Daten enthält.
Gruß
Christoph
da hätte ich ja auch mal F5 drücken können (o.T)
07.09.2005 07:10:53
Christoph
AW: da hätte ich ja auch mal F5 drücken können (o.T)
08.09.2005 07:53:56
gnilk
Danke fuer Deine Hilfe,
hat aber nicht so funktioniert, wie ich mir das vorstelle.
Habe das Problem jetzt aber auf eine andere Art und Weise geloest.
Ciao
Gnilk
AW: Autofilter
07.09.2005 07:27:02
Manfred
Hallo Gnilk,
Versuche doch mal folgenden Code:

Private Sub CommandButton1_Click()
Dim xx As Worksheet
Set xx = Worksheets("Tabelle1")
If xx.AutoFilterMode = False Then
xx.Rows("1:1").Select
Selection.Autofilter
End If
End Sub

Um das Ereignis auszulösen habe ich einen CommandButton verwendet. Geht natürlich an beliebiger anderer Programmstelle auch.
Gruß
Manfred
Anzeige
AW: Autofilter
08.09.2005 07:54:49
gnilk
Danke fuer Deine Hilfe,
hat aber nicht so funktioniert, wie ich mir das vorstelle.
Habe das Problem jetzt aber auf eine andere Art und Weise geloest.
War eine gute Anregung.
Ciao
Gnilk
AW: Autofilter
07.09.2005 07:36:04
Beate
Hallo Gnilk,
Private Sub Worksheet_Activate()
    If ActiveSheet.AutoFilterMode Or ActiveSheet.FilterMode Then Exit Sub
    Rows("1:1").AutoFilter
End Sub

Zeilenzahl für den Autofilter anpassen.
Gruß,
Beate
Anzeige
AW: Autofilter
08.09.2005 07:58:25
gnilk
Hallo Beate,
Dein Vorschlag sieht super aus, jedoch weiss ich nicht wie ich einen PrivateSub in mein Makro eingliedern kann. Mein Makro soll ja noch weiterlaufen.
Habe das Problem jetzt auf eine andere Art un Weise geloest. Waere aber nett, wenn du mir trotzdem erklaeren koenntest wie ich ein PrivatSub einbaue, so dass mein anderes Makro noch weiterlaeuft.
Ciao
Gnilk
Codeeinbau
08.09.2005 22:51:06
Beate
Hallo Gnilk,
dann schneide doch meinen Code einfach aus, aber er muss ans Ende deines Codes, weil das Makro ja beendet wird, wenn schon ein Filter eingebaut ist. Also, dass dein Makro dann so aussieht:
Sub Dein_Makro()
    'hier dein Code
    If ActiveSheet.AutoFilterMode Or ActiveSheet.FilterMode Then Exit Sub
    Rows("1:1").AutoFilter
End Sub

Gruß,
Beate
Anzeige
AW: Codeeinbau andere Alternative
08.09.2005 23:07:25
Beate
Hallo Gnilk,
hier noch die Variante, wenn du vor und nach meinem Code eigenen Code einfügen möchtest:
Sub Dein_Makro2()
    'hier dein Code
    If ActiveSheet.AutoFilterMode Or ActiveSheet.FilterMode Then
        GoTo weiter
        Else: Rows("1:1").AutoFilter
    End If
    weiter:
    'hier dein Code
End Sub

Gruß,
Beate
Anzeige
@Beate
09.09.2005 01:38:08
gnilk
Hallo Beate,
ja ich habe es auch so aehnlich geloest. Ich konnte es zum Glueck schon machen, ohne Deinen Beitrag zu loesen. Vielleicht darf ich die Hoffnung mit VBA noch nicht aufgeben! Aber trotzdem vielen Dank fuer Deinen Tip. Mich haette nur gerne interessiert, wie ich mehrere Subs mit nur einem CommandButton(z.B.) aktivieren kann.
So habe ich es gemacht:
If ActiveSheet.AutoFilterMode Or ActiveSheet.FilterMode Then GoTo Weiter
Selection.AutoFilter
Weiter:
Es schreit regelrecht nach Plagiat! Nehm es mir nicht uebel. Deine Anregung war super!
Ciao
Gnilk
PS: Gruss aus Down Under
Anzeige
AW: @Beate
09.09.2005 10:53:37
Beate
Hallo Gnilk,
gleichzeitig laufen kann immer nur ein Makro. Aber in deinem Makro kann ein anderes aufgerufen werden und nach Abarbeitung desselben wird das Ausgangsmakro weiter abgearbeitet.
Angenommen, dein "Untermakro" heißt Test2 und dein "Kopfmakro" Test1, dann geht das so in Test1:
Sub Test1()
    'Makrocode
    Call Test2
    'Makrocode
End Sub


Gruß,
Beate
Anzeige

11 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige