获取切片器的源表名称

时间:2015-01-13 22:35:26

标签: excel vba excel-vba excel-2013

我想在excel 2013中找到切片器的源表和列名。我发现:

ActiveWorkbook.SlicerCaches("Slicer_Measure_1").SourceName

会在VBA中产生结果,但我无法捕获它。
有人可以为此提供示例代码吗?

1 个答案:

答案 0 :(得分:2)

切片器链接到数据透视表,数据透视表链接到源表。
因此首先访问数据透视表,然后访问表。像。的东西。

ActiveWorkbook.SlicerCaches("Slicer_Measure_1").PivotTables("PivotTable1").SourceData

或者,如果您不知道链接到哪个数据透视表,则可以使用循环。

Dim pt As PivotTable
For Each pt In ActiveWorkbook.SlicerCaches("Slicer_Measure_1").PivotTables
    Debug.Print pt.Name, pt.SourceData
Next

这将为您提供与切片器关联的数据透视表和相应的表源。 HTH。