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

Forumthread: Pivottabelle sortieren VBA

Pivottabelle sortieren VBA
Florian
Guten Morgen Excel-Freunde!
Hätte eine Frage bzgl. Pivottabellen (VBA): wie kann ich Daten sortieren (Befehlszeile)?
Die Tabelle erstell ich wie folgt, ich möchte gern nach Umsatz absteigend sortieren. Wie geht das?
Danke Euch schon mal!
Gruss Florian
Set pt = PTCache.CreatePivotTable(tabledestination:=UmsatzSheet.Cells(7, 2))
With pt
.PivotFields(1).Orientation = xlRowField 'OrderNr
.PivotFields(2).Orientation = xlDataField 'Umsatz
End With
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Pivottabelle sortieren VBA
21.05.2010 11:29:52
fcs
Hallo Florian,
Set pt = PTCache.CreatePivotTable(tabledestination:=UmsatzSheet.Cells(7, 2))
With pt
.PivotFields(1).Orientation = xlRowField 'OrderNr
.PivotFields(2).Orientation = xlDataField 'Umsatz
.PivotFields(1).AutoSort xlDescending, .DataFields(1).Name
End With
Gruß
Franz
Anzeige
Danke Franz!!
22.05.2010 10:21:24
Florian
--
;
Anzeige
Anzeige

Infobox / Tutorial

Pivottabelle sortieren mit VBA in Excel


Schritt-für-Schritt-Anleitung

Um eine Pivottabelle in Excel mittels VBA nach Umsatz absteigend zu sortieren, kannst du folgende Schritte befolgen:

  1. Erstelle eine Pivottabelle: Zunächst musst du sicherstellen, dass du eine Pivottabelle erstellt hast. Hier ist der grundlegende Code, den du verwenden kannst:

    Set pt = PTCache.CreatePivotTable(tabledestination:=UmsatzSheet.Cells(7, 2))
    With pt
        .PivotFields(1).Orientation = xlRowField   'OrderNr
        .PivotFields(2).Orientation = xlDataField   'Umsatz
    End With
  2. Füge die Sortierung hinzu: Um die Pivottabelle nach Umsatz absteigend zu sortieren, füge die folgende Zeile hinzu:

    .PivotFields(1).AutoSort xlDescending, .DataFields(1).Name
  3. Vollständiger Code: Hier ist der vollständige VBA-Code zum Erstellen und Sortieren der Pivottabelle:

    Set pt = PTCache.CreatePivotTable(tabledestination:=UmsatzSheet.Cells(7, 2))
    With pt
        .PivotFields(1).Orientation = xlRowField   'OrderNr
        .PivotFields(2).Orientation = xlDataField   'Umsatz
        .PivotFields(1).AutoSort xlDescending, .DataFields(1).Name
    End With

Häufige Fehler und Lösungen

  • Fehler: "Objekt nicht gefunden"
    Lösung: Stelle sicher, dass der PTCache korrekt definiert ist und die Datenquelle der Pivottabelle existiert.

  • Fehler: "Sortieren nicht möglich"
    Lösung: Überprüfe, ob das Feld, nach dem du sortieren möchtest, tatsächlich in der Pivottabelle vorhanden ist.


Alternative Methoden

Neben der Verwendung von VBA gibt es auch alternative Methoden, um eine Pivottabelle in Excel zu sortieren:

  1. Manuelle Sortierung: Klicke einfach mit der rechten Maustaste auf das Feld in der Pivottabelle, das du sortieren möchtest, und wähle "Sortieren" aus dem Kontextmenü.

  2. Datenfilter: Du kannst auch einen Datenschnitt verwenden, um die Daten der Pivottabelle zu filtern und anschließend zu sortieren.


Praktische Beispiele

Angenommen, du hast eine Pivottabelle mit Verkaufsdaten und möchtest die Umsätze nach Produktkategorien absteigend sortieren. Dein VBA-Code könnte wie folgt aussehen:

Set pt = PTCache.CreatePivotTable(tabledestination:=UmsatzSheet.Cells(7, 2))
With pt
    .PivotFields("Produktkategorie").Orientation = xlRowField
    .PivotFields("Umsatz").Orientation = xlDataField
    .PivotFields("Produktkategorie").AutoSort xlDescending, "Umsatz"
End With

Tipps für Profis

  • Verwende Datenfilter: Kombiniere die Pivottabelle mit Datenschnitten, um die Analyse noch flexibler zu gestalten. Du kannst die Filterung und Sortierung kombinieren, um präzisere Berichte zu erstellen.

  • Automatisierung: Wenn du häufig die gleichen Pivottabellen erstellst, speichere deine VBA-Skripte in einer Excel-Vorlage, um Zeit zu sparen.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Felder gleichzeitig in einer Pivottabelle sortieren?
Du kannst mehrere Sortierbefehle hinzufügen, indem du für jedes Feld eine AutoSort-Anweisung anfügst.

2. Funktioniert dieser VBA-Code in allen Excel-Versionen?
Ja, der bereitgestellte VBA-Code sollte in den meisten modernen Excel-Versionen funktionieren, solange VBA unterstützt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige