VBA似乎忽略了下面代码中的.PivotTables函数。有人对此有任何可能的解释吗?是否有必要但不活跃的参考图书馆?提前谢谢。
ActiveWorkbook.PivotCaches.Create(SourceType:=xlConsolidation, SourceData:=
_"Raw!" &
Sheets("Raw").Range("A1").CurrentRegion.Address(ReferenceStyle:=xlR1C1),
Version:=6).CreatePivotTable _
tabledestination:="PivotTable!" & Sheets("PivotTable").Range("A" &
Range("A" & Rows.Count).End(xlUp).Row + 3).Address _
(ReferenceStyle:=R1C1), TableName:="MFTPiv1", defaultversion:=6
With ActiveSheet.pivottables("MFTPiv1").PivotFields("Wholesaler")
.Orientation = xlRowField
.Position = 1
End With
答案 0 :(得分:0)
如果您的工作表未处于活动状态,则“ActiveSheet”无法找到它。使您的工作表“数据透视表”处于活动状态:
Sheets("PivotTable").Select
With ActiveSheet.pivottables("MFTPiv1").PivotFields("Wholesaler")
.Orientation = xlRowField
.Position = 1
End With
或不:
With Sheets("PivotTable").pivottables("MFTPiv1").PivotFields("Wholesaler")
.Orientation = xlRowField
.Position = 1
End With
此外,我从未使用过“xlConsolidation”源类型。我尝试了一下我在这里的一些数据,它创建了一个不利于你想要完成的数据透视表。 “标准”透视缓存使用SourceType:= xlDatabase。也许试试吧。