Hallo,
ich möchte mit einem Makro aus einer bestehenden Pivot-Tabelle die gesetzten
Filterkriterien auslesen und in einem gesonderten Tabellenblatt auflisten.
Bislang habe ich folgendes zusammengeschrieben:
Sub Pivotfilter_auslesen()
'Makro muss aus dem Tabellenblatt, das die Pivottabelle enthält,
heraus gestartet werden
Dim AnzahlFelder As Byte
Dim Zähler As Byte
Dim Filternummer As Byte
Dim Anzahl As Long
With ActiveSheet.PivotTables("PivotTable2")
AnzahlFelder = .PivotFields.Count
Filternummer = 1
For Zähler = 1 To AnzahlFelder
If .PivotFields(Zähler).Orientation = xlPageField Then
Worksheets("Legende").Cells(1, Filternummer).Value = .PivotFields(Zähler).Name
Filternummer = Filternummer + 1
End If
Next Zähler
Anzahl = .PivotFields("Alter").PivotItems.Count
End With
For Zähler = 1 To Anzahl
Worksheets("Legende").Cells((Zähler + 1), 1).Value = _
ActiveSheet.PivotTables("PivotTable2").PivotFields("Alter").PivotItems(Zähler).Name
Next Zähler
End Sub
Hierbei werden natürlich nur die Werte zum Filter "Alter" ausgegeben und nicht für jeden gesetzten Filter.
Außerdem werden noch alle vorhandenen Werte und nicht nur die tatsächlich gefilterten Werte ausgegeben.
Leider bin in VBA noch sehr unerfahren und hoffe nunmehr hier auf die Hilfe von "Experten".
Wie bekomme ich es hin, dass für jeden gesetzten Filter in einem separaten Tabellenblatt die
gefilterten Daten angedruckt werden.
Z.B. in der ersten Spalte alle gefilterten Werte für das erste Filterkriterium und in
der zweiten Spalte alle gefilterten Werte für das erste Filterkriterium usw.
Viele Grüße
Markus
|