将多个数据透视表的数据源更改为相同的数据缓存,以便它们可以通过切片器链接

时间:2018-08-11 00:07:05

标签: excel vba excel-vba

我有两个表,当前通过切片器的报告连接进行连接。我正在使用VBA删除数据透视表来源的报告中的某些行。一旦删除了行,它似乎破坏了与数据透视表关联的源数据,因为在运行宏以删除行之后,数据透视表显示了其A1:B1。因此,我想将这些数据透视表重新映射到新的数据缓存,以便在源数据更新后再次连接它们。我要更新的代码当前如下,但是收到“运行时错误'438”:对象不支持此属性或方法。 由于收到仍在连接中的报告的错误,我已经断开了两个报告之间的报告连接。

Sub fyuvkthis()
Dim WireDetail As Worksheet
Set WireDetail = ActiveWorkbook.Sheets("Wire Detail")
Dim lastRowWireDetail As Integer
  lastRowWireDetail = lastRow(WireDetail)
Dim pCache As PivotCache
  Set pCache = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=WireDetail.Range("A1:AB" & lastRowWireDetail))

  ActiveSheet.PivotTables("Analyzer").ChangePivotCache (pCache)

  ActiveSheet.PivotTables("NarrativeGenerator").ChangePivotCache (pCache)

End Sub

0 个答案:

没有答案