【发布时间】:2018-10-06 22:15:19
【问题描述】:
我正在尝试创建一个数据透视表并将其放置在预定义的位置(不是新工作表)。
在每次运行宏之前,都会删除数据透视表以及预定义的工作表。
我注意到,当您手动创建表时,表名每次都会增加一个(PivotTable2、PivotTable3...),我认为这是我的代码失败的地方。
我收到运行时错误 5,此行上的过程调用或参数无效:
ActiveWorkbook.PivotCaches.Create
我确实检查了this 线程,它说您可以完全删除表名参数,或者重命名它 - 但是我仍然遇到错误。
我的代码:
Sub CreatePivot()'
' CreatePivot Macro
'
' Set data as table
Sheets("Filtered Flags").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$G$16000"), , xlYes).Name _
= "Table1"
' Create worksheet for pivot output
Sheets.Add Before:=ActiveSheet
ActiveSheet.Name = "Flag Pivot"
'Create Pivot Table
Sheets("Filtered Flags").Select
Range("Table1[[#Headers],[Order '#]]").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Table1", Version:=6).CreatePivotTable TableDestination:="Flag Pivot!R3C1" _
, TableName:="PivotTable5", DefaultVersion:=6
Sheets("Flag Pivot").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable5").PivotFields("Material #")
.Orientation = xlRowField
.Position = 1
End With
End Sub
【问题讨论】:
标签: excel vba runtime-error pivot-table