Pivot in Office 2007
John
ich habe mir in Excel 2003 mühsam ein Makro zusammengebastelt, das dann auch super seine Dienste getan hat.
Mit dem Umstieg auf Office 2007 steigt das Makro bei der Erstellung der Pivot Tabelle immer aus.
Ich finde die neue Syntax einfach nicht.
Vielleicht kann mir von den Experten hier jemand helfen.
Ich wäre sehr dankbar.
Hier der Code aus Excel 2003:
Sub A09_KontenAufriss()
' B_KontenAufriss Makro
' Makro am 02.12.2008 von J. Kopp aufgezeichnet
Rows("1:2").Select
Selection.Delete Shift:=xlUp
Columns("A:B").Select
Selection.Delete Shift:=xlToLeft
Rows("2:2").Select
Selection.Delete Shift:=xlUp
Cells(1, 1).Select
'Konto als Text formatieren
Columns("C:C").Select
Selection.TextToColumns Destination:=Range("C1"), DataType:=xlFixedWidth, _
FieldInfo:=Array(0, 2), TrailingMinusNumbers:=True
'Alle Spalten mit Inhalt markieren
Range(Range("A1"), Selection.End(xlToRight)).EntireColumn.Select
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
Selection).CreatePivotTable TableDestination:="", TableName:= _
"PivotTable1"
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("PivotTable1").SmallGrid = False
Sheets(1).Name = "Pivot"
If Sheets(2).Cells(1, 1).Value = "CoCd" Then GoTo englisch
'Buchungskreis in Pivot einfügen
With ActiveSheet.PivotTables("PivotTable1").PivotFields("BuKr")
.Orientation = xlPageField
.Position = 1
.PivotItems("(Leer)").Visible = False
End With
GoTo weiter
englisch:
'Buchungskreis in Pivot einfügen
With ActiveSheet.PivotTables("PivotTable1").PivotFields("CoCd")
.Orientation = xlPageField
.Position = 1
.PivotItems("(Leer)").Visible = False
End With
weiter:
FußzeileKopp
SeiteVonSeiten
End Sub
Das Makro steigt nun immer hier aus:
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
Selection).CreatePivotTable TableDestination:="", TableName:= _
"PivotTable1"
Ein Muster der Datei, die ich einlese hänge ich mal hier dran.
https://www.herber.de/bbs/user/81687.xls
Ich danke Euch.
John