我有一个宏,可以创建一个新的工作表和数据透视表(工作正常)。一旦我尝试向此工作表添加第二个数据透视表,我收到此错误消息。
错误消息:运行时错误“5”:无效的过程调用或参数
当我在新工作表中创建第二个数据透视图时,它工作正常,所以我认为问题是当我选择添加到现有工作表时。
这是第二个数据透视表的代码(使用宏创建,抱歉我是新手,所以可能有点乱),错误在第3行。不确定为什么它引用数据透视表“调用方式Region / Analyst“,这是现有的支点:
Sheets("Sorted Data").Select
ActiveCell.Offset(1, -7).Range("Table1[[#Headers],[Status]]").Select
ActiveWorkbook.Worksheets("Pivot Tables").pivotTables("Calls by Region/Analyst" _
).PivotCache.CreatePivotTable TableDestination:="Pivot Tables!R3C6", _
TableName:="PivotTable6", DefaultVersion:=xlPivotTableVersion12
Sheets("Pivot Tables").Select
Cells(3, 6).Select
ActiveSheet.pivotTables("PivotTable6").Name = "Analyst"
ActiveSheet.pivotTables("Analyst").AddDataField ActiveSheet.pivotTables( _
"Analyst").PivotFields("Assigned User Name"), "Count of Assigned User Name", _
xlCount
ActiveSheet.pivotTables("Analyst").PivotFields("Count of Assigned User Name"). _
Caption = "Number of Calls"
With ActiveSheet.pivotTables("Analyst").PivotFields("Assigned User Name")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.pivotTables("Analyst").CompactLayoutRowHeader = "Analyst"
ActiveCell.Offset(0, 4).Range("A1").Select
End Sub
以下是在 new 工作表中打开它时第二个支点的代码,但是我需要在现有工作表中(在F3处):
Sheets("Sorted Data").Select
ActiveCell.Offset(1, -7).Range("Table1[[#Headers],[Status]]").Select
Sheets.Add
ActiveWorkbook.Worksheets("Pivot Tables").pivotTables("Calls by Region/Analyst" _
).PivotCache.CreatePivotTable TableDestination:="Sheet3!R3C1", TableName:= _
"PivotTable5", DefaultVersion:=xlPivotTableVersion12
Sheets("Sheet3").Select
Cells(3, 1).Select
ActiveSheet.pivotTables("PivotTable5").Name = "Analyst"
ActiveSheet.pivotTables("Analyst").AddDataField ActiveSheet.pivotTables( _
"Analyst").PivotFields("Assigned User Name"), "Count of Assigned User Name", _
xlCount
ActiveSheet.pivotTables("Analyst").PivotFields("Count of Assigned User Name"). _
Caption = "Number of Calls"
With ActiveSheet.pivotTables("Analyst").PivotFields("Assigned User Name")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.pivotTables("Analyst").CompactLayoutRowHeader = "Analyst"
ActiveCell.Offset(1, 0).Range("A1").Select