Pivot-Makro läuft nicht (Duplikate konsolidieren)
15.08.2006 10:41:11
B.
Ich habe eine Liste mit zwei, bzw. 3 Spalten (A=:Nummer, B=:Bezeichnung, C=:Anzahl), eigentlich ganz simpel, allerdings mit Duplikaten in den Datensätzen. (die B-Spalte verarbeite ich in der Pivot-Tabelle aus Gründen der Übersichtlichkeit nicht, aber ich hab's probiert, ob 2 oder 3 Spalten macht keinen Unterschied, der Fehler kommt in beiden Fällen)
Nun habe ich per Pivot-Tabelle die Liste verarbeitet um die Duplikateinträge zu addieren und zu entfernen; funktioniert auch noch klasse, und das ganze per Makro aufgezeichnet und jetzt geht's los:
Wenn ich das Makro anwenden will, gibt mir Excel einen Fehler aus:
"Laufzeitfehler '1004':
Die Pivot-Eigenschaft des Pivot Table-Objektes kann nicht zugeordnet werden."
Und was ich überhaupt nicht verstehe, ist, daß es sogar bei der identischen, unveränderten Ursprungsliste passiert, mit der ich das Makro erstellt habe. Ich erstelle also ein Pivot mit einer Liste, zeichne das Makro auf, schließe die Liste ohne Änderungen (Makro aber natürlich gespeichert), öffne die identische Liste wieder und das Makro geht nicht.
Die mit "|-|-|-|-|-|"-Zeichen versehene Zeile markiert mir der Debugger, aber ich kann dabei nichts erkennen.
Wie gesagt, es handelt sich beider Anwendung des Makros um die identische Datei mit der das Makro/Pivot auch erstellt wurde und ich hab' sowas vor ein paar Tagen schon mit anderen Listen gemacht und da haben die Pivot-Makros einwandfrei funktioniert, sogar auf relativ unterschiedliche Listen angewendet.
Findet hier im Code jemand einen schematischen Fehler oder weiß sonst was ich falsch mache, ODER weiß jemand eine andere, Makro-automatisierbare (!!!) Möglichkeit um Duplikate aus einer Liste zu entfernen, deren Anzahlen aber zu addieren?!?
Danke & Grüße
Bye Bernd
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"anzahl_pm_P101!C1:C3").CreatePivotTable TableDestination:= _
"[1.xls]anzahl_pm_P101!R1C5", TableName:="PivotTable1", DefaultVersion:= _
xlPivotTableVersion10
With ActiveSheet.PivotTables("PivotTable1")
.ColumnGrand = False
.DisplayNullString = False
End With
|-|-|-|-|With ActiveSheet.PivotTables("PivotTable1").PivotFields("Typ")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields("Anzahl"), "Anzahl von Anzahl", xlCount
ActiveSheet.PivotTables("PivotTable1").PivotFields("Anzahl von Anzahl"). _
Function = xlSum
Range("E2").Select
ActiveSheet.PivotTables("PivotTable1").PivotFields("Typ").Subtotals = Array( _
False, False, False, False, False, False, False, False, False, False, False, False)
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Bezeichnung")
.Orientation = xlRowField
.Position = 2
End With..........................