2017-06-14 1 views
0

Ich versuche, eine einfache Pivot-Tabelle mit Gas auf der Spalte, Dash Nr für die Zeile und meine Menge für die Eingabe zu erstellen. Ich habe diese Frage untersucht und kann keine Lösung finden. Wenn ich versuche, meinen Code auszuführen, bekomme ich immerEXCEL VBA: Wie Pivot-Tabellenfehler zu beheben, wenn UsedRange verwendet wird?

Fehler 1004: Anwendungsdefinierter oder objektdefinierter Fehler.

Hier ist mein Code:

Sub CreatePivotTable() 

Dim sheet As Worksheet 
Set sheet = Worksheets("mac3") 

Sheets.Add.Name = "Table" 
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
sheet.UsedRange, Version:=xlPivotTableVersion14). _ 
CreatePivotTable TableDestination:="Table!R3C1", TableName:="Pvt" _ 
, DefaultVersion:=xlPivotTableVersion14 

    Sheets("Table").Select 
    Cells(3, 1).Select 
    With ActiveSheet.PivotTables("Pvt").PivotFields("Gas") 
     .Orientation = xlColumnField 
     .Position = 1 
    End With 
    With ActiveSheet.PivotTables("Pvt").PivotFields("Dash") 
     .Orientation = xlRowField 
     .Position = 1 
    End With 
    ActiveSheet.PivotTables("Pvt").AddDataField ActiveSheet.PivotTables(_ 
     "Pvt").PivotFields("Qty"), "Sum of Qty", xlSum 
    Range("B4").Select 
    Selection.Group Start:=True, End:=True, Periods:=Array(False, False, False, _ 
     False, True, False, False) 
End Sub 
+0

Welche Codezeile wirft diesen Fehler auf? – ojf

+0

@ojf Ich habe das Problem gefunden! 'ActiveWorkbook.PivotCaches.Create (Quellentyp: = xlDatabase, Quelldaten: = _ sheet.UsedRange, Version: = xlPivotTableVersion14). _ CreatePivotTable TableDestination: = "Tabelle! R3C1", TableName: = "Pvt" _ , DefaultVersion: = xlPivotTableVersion14' Da stimmt etwas nicht – cthallofamer

Antwort

1

Haben Sie bereits eine "Pvt" in Ihrem Arbeitsblatt haben? Es kann diesen Fehler verursachen, in diesem Fall können Sie versuchen, die Blatt- und Tabellennamen in etwas anderes zu ändern.