Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1012to1016
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

Makro

Makro
01.10.2008 16:33:00
Suse
Hey,
ich bau grad ein Makro und moechte eine etwas groesseren Haufen von Daten in einer Pivottabelle darstellen. Wenn ich das dann aber ablaufen lasse funktioniert das nicht, da folgende Fehlermeldung erscheint:

Sub Macro121()
' Macro121 Macro
Range("A1:H4").Select
Range(Selection, Selection.End(xlDown)).Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Units!R1C1:R5473C8", Version:=xlPivotTableVersion12).CreatePivotTable _
TableDestination:="Sheet9!R3C1", TableName:="PivotTable9", DefaultVersion _
:=xlPivotTableVersion12
Sheets("Sheet9").Select
Cells(3, 1).Select
End Sub


Liegt es an der Fuelle von Daten?
Vielen Dank,
Suse

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro
01.10.2008 17:46:29
fcs
Hallo Suse,
einen aufgezeichneten Code für das erstellen einer Pivot-Tabelle muss man in eine allgemeine Form umsetzen, damit die Objektnamen korrekt sind und er bei wiederholtem Aufruf funktioniert.
etwa wie folgt. Dieser Code läuft unter Excel 2003 (Version 10)
Gruß
Franz

Sub Macro121()
Dim wksDaten As Worksheet
Dim Bereich As Range
Dim wksPivot As Worksheet
Set wksDaten = ActiveSheet
Range("A1:H4").Select
Set Bereich = Range(Selection, Selection.End(xlDown))
Sheets.Add
Set wksPivot = ActiveSheet
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'" & wksDaten.Name & "'!" & _
Bereich.Address(ReferenceStyle:=xlR1C1)).CreatePivotTable _
TableDestination:="'" & wksPivot.Name & "'!R3C1"
Cells(3, 1).Select
'den nachfolgenden Code für das Festlegen der Felder im Bericht ggf aufzeichnen und _
den Namen der Pivottabelle durch 1 ersetzen
With ActiveSheet.PivotTables(1).PivotFields("Feld01")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables(1).AddDataField ActiveSheet.PivotTables(1).PivotFields("Feld02"), _
"Summe von Feld02", xlSum
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige