将不同的 SlicerCache 分配给 Excel 数据透视表中的切片器

Assign different SlicerCache to a Slicer in Excel PivotTable

我有两个具有相同 PivotCache 和相似切片器集的 Pivot Table。一些切片器控制两个 Pivot Tables,这意味着例如对于 PivotField [Month],共有 2 个切片器共享相同的 SlicerCache。

现在我需要 'unsynchronize' 这些切片器,以便每个切片器控制自己的枢轴 Table。我无法右键单击切片器并通过 "PivotTable Connections" 执行此操作,因为在一个切片器中所做的更改将反映在另一个切片器中。

所以我创建了一个新的 SlicerCache:

ThisWorkbook.SlicerCaches.Add ws.PivotTables(2), "[Month]"

并想将这个新的 SlicerCache 分配给其中一个切片器,但是两种方法都失败了:

   oSlicer.SlicerCache = ThisWorkbook.SlicerCaches(38) 'Object doesn't support this property or method
   oSlicer.SlicerCache.Index = 38 'invalid property assignment

有什么想法吗?我知道我可以通过删除并重新创建其中一个切片器来实现这一点,但它必须以编程方式完成。

我不相信这是可能的。为什么不以编程方式删除切片器并根据需要使用连接再次添加它们?或者,如果您需要在具有多个连接和只有一个连接之间切换一个切片器,您可以将两个切片器堆叠在一起,然后将您想要的切片器放在顶部。

前段时间我写了一篇关于 SlicerCaches 的文章,您可能会发现在 http://dailydoseofexcel.com/archives/2014/08/05/slicers-and-slicercaches/

上有用