xlpivot Table version?
20.03.2018 12:48:21
Georg
ich komme mit der PivotTable Version nicht zurecht. Ich habe Office 2013 Standard.
Der folgende Code erzeugt eine Fehlermeldung in der Zeile
Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=PRange, Version:=xlPivotTableVersion15)
Wenn ich die Versionsangabe weglasse, funktioniert es, aber die Pivot schaut aus wie unter Excel 2003 oder so.
eine Idee, danke. !!!
Sub createPivotTable()
Dim pt As PivotTable
Dim wrkSht As Worksheet
Dim pvtSht As Worksheet
Dim PTCache As PivotCache
Dim PRange As Range
Dim finalRow As Long
Dim finalCol As Long
Call wsNew
Call ColumnsKorr
'Arbeitsblätter, die verwendet werden
Set wrkSht = Worksheets("Gesamt") 'Datenquelle
Set pvtSht = Worksheets("PivotTabelle") 'Ziel wurde über wsNew erzeugt
'Anzahl Zeilen und Spalten mit Daten:
finalRow = wrkSht.Cells(Application.Rows.Count, 1).End(xlUp).Row
finalCol = wrkSht.Cells(1, Application.Columns.Count).End(xlToLeft).Column
'Datenbereich Definieren :
Set PRange = wrkSht.Cells(1, 1).Resize(finalRow, finalCol)
Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=PRange, _
Version:=xlPivotTableVersion15)
Set pt = PTCache.createPivotTable(TableDestination:=pvtSht.Cells(1, 1), _
TableName:="PvDaten", DefaultVersion:=xlPivotTableVersion15)
pt.ManualUpdate = True
With pt.PivotFields("Kostenstelle")
.Orientation = xlPageField
.Position = 1
End With
With pt.PivotFields("Konto")
.Orientation = xlRowField
.Position = 1
End With
With pt.PivotFields("Betrag")
.Orientation = xlDataField
.
Function = xlSum
.Position = 1
.NumberFormat = _
"_-* #,##0.00 [$-407]_-;-* #,##0.00 [$-407]_-;_-* ""-""? [$-407]_-;_-@_-"
End With
pt.ManualUpdate = False
End Sub