[Excel] [Excel 2007 VBA] Sortieren einer Tabelle, die einen AutoFilter gesetzt hat

DarthShader

Erfahrenes Mitglied
Hallo,

ich habe in einer Tabelle einen AutoFilter, der mir eine "Status" Spalte nach "offen" und "geschlossen" filtern. Der AutoFilter ist meist so eingestellt, dass er nur alle "offenen" Einträge anzeigt, die Zeilen mit Status "geschlossen" also raus-filtert.

Im VBA code möchte ich nun die Tabelle sortieren (nach einer Spalte "Wert"), der Code sieht so aus (aus Kompatibilitätsgründen in der Excel 2003 Syntax):

Code:
    Set sortRange = Worksheets("Tabelle1").Range("B5:F20")
    sortRange.Sort _
        Key1:=Worksheets("Tabelle1").Range("statusColumn").EntireColumn, _
        Order1:=xlDescending, _
        Header:=xlNo, _
        OrderCustom:=1, _
        MatchCase:=False, _
        Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal


Ich sortiere also ganz einfach im Bereich B5 bis F20. Innerhalb dieses Bereichs kann es nun sein, dass eine oder mehrere Zeilen ausgeblendet sind (AutoFilter) - und genau das ist mein Problem, diese Zeilen sortiert er einfach nicht mit.

Vielen Funktionen von VBA stören es nicht, wenn Zeilen ausgeblendet sind, die werden alle immer in die Berechnung mit einbezogen. Und ausgerechnet beim Sortieren nun nicht.

Kann mir jemand sagen, wie ich Excel dazu bringen kann, den "echten" Bereich zu sortieren, und den AutoFilter dabei zu ignorieren? Oder muss ich tatsächlich den AutoFilter via VBA vor dem Sortieren wegmachen, dann sortieren, und ihn am Ende wieder setzen? (Falls ja, wie kann ich den aktuellen Zustand des Autofilters speichern und später wieder setzen?).


Vielen Dank für Eure Hilfe!
 

Neue Beiträge

Zurück