Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1112to1116
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
Inhaltsverzeichnis

Pivotdetails auslesen per VBA

Pivotdetails auslesen per VBA
spezifischer
Hallo zusammen,
im Forum habe ich zwar viele Eintraege zur Erstellung von Pivot Tabellen gefunden, aber bei meinem Problem geht es genau anders herum.
Problemstellung:
  • Gegeben ist eine komplexe Pivottabelle (nur ein Sheet in der Datei ohne Detailsheet).

  • Verschiedene vordefinierte/gesetzte Filter (sind von mal zu mal anders gesetzt).

  • Meine Aufgabe ist es nun, alle ggf. gesetzten Filter zu loeschen und die Gesamtheit der Detaildaten (mehrere 1000 Datensaetze) zu verwerten.
    Frage:
    1) wie komme ich an die Detaildaten heran und kann sicherstellen, dass ich auf die ungefilterten Daten zugreife?
    2) muss ich das Pivot erst über PivotDetails bearbeiten, oder komme ich auch direkt im Pivot an die ungefilterten Daten ran?
    Leider kann ich aktuell keine Beispieldatei bereitstellen, versuche aber eine anonymisierte Version zu erstellen und hier abzulegen.
    Evtl. habt Ihr ja bereits vorab einen Tipp, wie ich zu einer Loesung komme.
    Ich wuerde mich sehr über ein paar Tipps zur Loesung meines Problemes freuen.
    Danke

    3
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Benutzer
    Anzeige
    AW: Pivotdetails auslesen per VBA
    04.11.2009 12:02:13
    fcs
    Hallo spezifischer - etwas spezifischer dürfte es schon sein ;-),
    das folgende Makro setzt im aktiven Blatt für alle Pivot-Felder alle Elemente auf visible=True.
    Karteileichen (Items ohen Daten) werden dabei gelöscht.
    Gruß
    Franz
    'Erstellt unter Excel 2003
    Sub PivotAllesAnzeigen()
    Dim pvTab As PivotTable, pvField As PivotField, pvItem As PivotItem
    Dim StatusCalc As Long
    On Error GoTo Fehler
    StatusCalc = Application.Calculation
    Set pvTab = ActiveSheet.PivotTables(1)
    If StatusCalc  xlCalculationAutomatic Then _
    Application.Calculation = xlCalculationAutomatic
    For Each pvField In pvTab.PageFields
    pvField.CurrentPage = "(Alle)"
    Next
    For Each pvField In pvTab.RowFields
    For Each pvItem In pvField.PivotItems
    If pvItem.Visible = False Then pvItem.Visible = True
    Next
    Next
    For Each pvField In pvTab.ColumnFields
    For Each pvItem In pvField.PivotItems
    If pvItem.Visible = False Then pvItem.Visible = True
    Next
    Next
    pvTab.RefreshTable
    Fehler:
    With Err
    Select Case .Number
    Case 0 'kein fehler
    Case 1004
    If Not pvItem Is Nothing Then pvItem.Delete
    Resume Next
    Case Else
    MsgBox "Fehler-nr.: " & .Number & vbLf & .Description
    End Select
    End With
    If StatusCalc  Application.Calculation Then Application.Calculation = StatusCalc
    End Sub
    

    Anzeige
    AW: Pivotdetails auslesen per VBA
    04.11.2009 12:52:41
    Luschi
    Hallo Franz,
    eine kleine Korrektur, bei: If Not pvItem Is Nothing Then pvItem.Delete muß das Not weg,
    sonst werden alle vorhandenen Items gelöscht.
    Deshalb so: If pvItem Is Nothing Then pvItem.Delete
    Gruß von Luschi
    aus klein-Paris
    AW: Pivotdetails auslesen per VBA
    04.11.2009 13:01:48
    fcs
    Hallo Luschi,
    meine Version ist schon in Ordnung.
    Der Fehler tritt hier auf, wenn die Visible-Eigenschaft eines Pivot-Items nicht gesetzt werden kann, weil es zu dem Item keine Daten gibt. Solche Items sollen dann aus der Liste gelöscht werden.
    If pvItem Is Nothing Then pvItem.Delete
    Macht ja auch keinen Sinn, denn wenn pvItem "Nothing" ist, dann ist kein Objekt zum Löschen voehanden und es kommt zu einem weiteren Fehler in der Fehler-Behandlung.
    Gruß
    Franz
    Anzeige

    300 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige