Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
624to628
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
624to628
624to628
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Pivottabelle mit Makro erstellen
23.06.2005 11:45:17
Inge
Hallo an die Expertenrunde!
Zu Vereinfachungszwecken moechte ich aus einer sehr grossen "Rohdaten-Tabelle" eine Pivottabelle erstellen. Diese Rohdatentabelle wird monatlich aktualisiert. Das heisst, es werden monatlich eine unterschiedliche Anzahl (diese koennen von Monat zu Monat unterschiedlich sein) von Zeilen ergaenzt. Das heisst, dass sich die Datengrundlage fuer die Pivottabelle monatlich vergroessert (in Zeilen gemessen).
Da ich aber nicht jeden Monat erneut eine Pivottabelle erstellen moechte, suche ich einen Weg dies moeglichst zu standardisieren und habe an ein Makro gedacht und auch eines aufgezeichnet und ausprobiert. Allerdings bekam ich eine Fehlermeldung und zwar konnte innerhalb des Makros das Layout der Pivottabelle (also die Feldzuweisungen) nicht nachgestellt werden. Hier jetzt meine Frage:
Was habe ich falsch gemacht?
Gibt es etwas grundsaetzliches zu beachten, wenn man mittels eines Makros eine Pivottabelle mit sich aendernder Datengrundlage erstellen will?
Danke im Voraus fuer Eure Hilfe!
Gruesse
Inge

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pivottabelle mit Makro erstellen
23.06.2005 11:54:28
Tom
Hallo,
so ein Makro haben wir auch, allerdings haben wir als Bereich alle Zeilen ausgewählt und die Leeren einfach ausgeblendet.
Danach muss man die Pivottabellen, nach dem Updaten nur noch aktualisieren udn die neuen Daten werden mit in die Pivottabellen übernommen.
Grüße
Tom
AW: Pivottabelle mit Makro erstellen
23.06.2005 11:54:42
arne
hallo inge,
also was du falsch gemacht hast, laesst sich ohne den code nicht ohne weiteres sagen.
2. Solange nur Zeilen - sprich werte - hinzugefügt werden, sollte die pivot keine probleme machen.
kniffliger wird es, wenn du nicht nur werte sondern auch zusätzliche spalten - kategorien - hinzufügst.
arne
Anzeige
AW: Pivottabelle mit Makro erstellen
23.06.2005 13:07:58
Inge
Danke schonmal fuer die Antworten.
Das unten (ganz unten) ist der Code, den ich verwende. Die Fehlermeldung lautet: "Run Time Error '1004'Addfields method of PivotTable class failed". Wenn man dann in VBA schaltet, wird dieser Teil des Makros hervorgehoben:
ActiveSheet.PivotTables("PivotTable4").AddFields RowFields:=Array( _
"Cost elem.", "Cost element name", "Lotus cost element name"), ColumnFields:= _
"Name of offsetting account", PageFields:="Per"
Was ist falsch? Ich vermute, dass es mit der Datenrange fuer die Pivottabelle zusammenhaengt, denn diese Fehlermeldung erscheint nur, wenn ich die Daten ueber "alle Zeilen auswaehlen" auswaehle. Wenn ich nur den Datenbereich im Sheet markiere, klappt es. Allerdings bringt mir das nichts, da sich die Datenrange monatlich um eine unterschiedliche Anzahl Zeilen erweitert und die Erweiterung dann nicht in die Pivottabelle uebernommen wird.
Danke fuer Eure Antworten!
Gruesse,
Inge

Sub Pirol()
' Pirol Macro
' Macro recorded 23/06/2005 by agrist01
' Keyboard Shortcut: Ctrl+p
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'Raw Data'!C1:C8").CreatePivotTable TableDestination:="", TableName:= _
"PivotTable4"
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("PivotTable4").SmallGrid = False
ActiveSheet.PivotTables("PivotTable4").AddFields RowFields:=Array( _
"Cost elem.", "Cost element name", "Lotus cost element name"), ColumnFields:= _
"Name of offsetting account", PageFields:="Per"
ActiveSheet.PivotTables("PivotTable4").PivotFields("      Val.in rep.cur."). _
Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveSheet.PivotTables("PivotTable4").PivotSelect _
"'Cost element name'[All;Total]", xlDataAndLabel
ActiveSheet.PivotTables("PivotTable4").PivotFields("Cost element name"). _
Subtotals = Array(False, False, False, False, False, False, False, False, False, False, _
False, False)
ActiveSheet.PivotTables("PivotTable4").PivotSelect "'Cost elem.'[All;Total]", _
xlDataAndLabel
ActiveSheet.PivotTables("PivotTable4").PivotFields("Cost elem.").Subtotals = _
Array(False, False, False, False, False, False, False, False, False, False, False, False)
Range("D5").Select
ActiveSheet.PivotTables("PivotTable4").PivotFields( _
"Count of       Val.in rep.cur.").

Function = xlSum
Sheets("Sheet2").Select
Sheets("Sheet2").Name = "costs by name"
End Sub

Anzeige
AW: Pivottabelle mit Makro erstellen
23.06.2005 14:54:04
arne
hallo inge,
na das ist doch schon mal was.
Was ist denn auf dem blatt alles drauf? nur die daten? wie sind die daten angeordnet?
du hast als daten c1-c8 angegeben. befinden sich alle daten in einer spalte?
aussehen sollte es wie hier
http://www.hrz.uni-dortmund.de/S3/alexandra/helpdesk/Excel/ExcelPivottabellen/Pivot-Tabellen.htm
das macht die berechnung am einfachsten.
Dann noch eine frage: warum steht " val.in..." dort (die freizeichen sind eigentlich seltsam).
so, dass waren ersteinmal genug fragen.
arne
Anzeige
AW: Pivottabelle mit Makro erstellen
24.06.2005 10:31:21
Inge
Meine Tabelle besteht aus 8 Spalten, die Daten befinden sich in Zeile D. Die anderen 7 Spalten beschreiben die Daten, (es handelt sich um Reisekosten) also auf welcher Kostenstelle sie stehen, wer sie verursacht hat und in welchem Monat sie anfallen. Jeden Monat wird die Liste ergaenzt. Diese Ergaenzung geschieht durch das Hinzufuegen von Reihen.
Angeregt durch Deine Antwort wundere ich mich jetzt natuerlich, warum als Datenangabe in diesem Makro die C-Spalte angegeben ist und diese Freizeichen kann ich mir auch nicht wirklich erklaeren. Naja, daran werde ich erstmal weiterarbeiten.
Fuer weitere Anregungen und Tipps bin ich sehr dankbar!
Vielen Dank und viele Gruesse
Inge
Anzeige
AW: Pivottabelle mit Makro erstellen
24.06.2005 13:25:31
Otto
Hallo Inge,
Meine Testumgebungen: Excel 9.0 SR-1, Multilingual unter Windows 2000 SP-4 und Excel 11 Deutsch unter Windows XP
Willst Du die PivotTabelle jedesmal neu aufbauen, oder reicht es aus, einfach den Quellbereich neu zu definieren?
Im Übrigen ist gerade bei PivotTabellen der Excel-Level sehr relevant. Mit welchem arbeitest Du?
Gruß Otto

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige