Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Pivo Tabelle automatisch erstellen

Pivo Tabelle automatisch erstellen
26.08.2005 09:42:57
Rudi
Ich glaube das ist nicht einfach, halt etwas für Experten.
Aber kann man eine Pivot-Tabelle per VBA Makro automatisch erstellen?
Das ganze soll so aussehen:
Der zu analysierende Bereich ist der Datenbereich mit dem Feldnamen: „AW99“
Die Pivotabelle soll in der bestehenden Arbeitsmappe, dem Bereich mit dem Feldnamen: „PT1“ erstellt werden.
Das Layout ist folgendes:
Die Schaltfläche mit dem Namen „VB1“ soll ins Diagramm „Seite“
Die Schaltfläche mit dem Namen „Provision“ soll ins Diagramm „Daten“
Zusammenfassen mit: „Summe“; Zahlen „Währung“.
In der fertigen Tabelle soll die Feldliste „VB1“ geöffnet werden, damit man sehen kann, aus welchen VB´s sich die Summe addiert.
Ich habe sie mit dem Rekorder aufgezeichnet der Code sieht so aus:

Sub PIVO1()
Application.Goto Reference:="AW99"
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:="AW99"). _
CreatePivotTable TableDestination:= _
"'[Rittersbacher Provisionsabrechnung.xls]PTAB'!R3C1:R65536C4", TableName:= _
"PivotTable9", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTables("PivotTable9").AddFields PageFields:="VB1"
With ActiveSheet.PivotTables("PivotTable9").PivotFields("Provision")
.Orientation = xlDataField
.Caption = "Summe von Provision"
.

Function = xlSum
.NumberFormat = "#.##0,00 €"
End With
With ActiveSheet.PivotTables("PivotTable9").PivotFields("VB1")
.Orientation = xlRowField
.Position = 1
End With
End Sub

gruss rudiflei
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Pivottabelle automatisch erstellen
26.08.2005 18:03:41
Erich
Hallo Rudi,
das sieht doch schon ganz gut aus. Aber ich vermute, das Makro funzt nicht (sonst würdest du es wohl auch nicht hier ins Forum stellen).
Ich schlage zwei Änderungen vor:
1.
Die Angabe "AW99" bei SourceData reicht wohl nicht aus. hier muss ein Bereich stehen, der aus mehreren Zellen besteht (aus allen Zellen, die mit Pivot ausgewertet werden sollen). Da habe ich im Code mal als letzte Zelle dieses Bereichs AZ123 geschrieben - musst du sicher anpassen.
2.
Bei TableDestination ist es genau umgekehrt: Hier sollte kein Bereich stehen, sondern nur eine einzelne Zelle, bei der die Pivottabelle anfangen soll.
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:="AW99:AZ123"). _
CreatePivotTable TableDestination:= _
"'[Rittersbacher Provisionsabrechnung.xls]PTAB'!R3C1", TableName:= _
"PivotTable9", DefaultVersion:=xlPivotTableVersion10
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Pivottabelle automatisch erstellen
26.08.2005 18:12:09
Rudi
O.K
Schönen Dank. Das funktioniert jetzt.
gruss rudiflei
AW: Ergänzung
26.08.2005 18:12:22
Erich
Hallo Rudi,
wenn die Pivottabelle erstellt ist, kannst du (mit Makroaufzeichnung) noch die anderen Felder, die du in der Auswertung haben möchtest, in die Pivottabelle bringen. Dan aufgezeichneten Code kannst du dann ans Ende deines bereits erstellten Makros kopieren.
Die Feldliste wird standardmäßig angezeigt, wenn eine Zelle der Pivottabelle aktiviert ist.
Falls der Code nicht läuft, wäre es ziemlich nützlich, wenn du schreibst, in welcher Codezeile der Fehler auftritt und wie die Fehlermeldung lautet.
Grüße von Erich aus Kamp-Lintfort
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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