如何获取枢轴项索引,知道它的名称

时间:2015-11-10 14:08:57

标签: excel vba pivot-table

如何了解枢轴项目的名称?

我想反过来说:

ActiveSheet.PivotTables(1).PivotFields("MyFiledName").PivotItems(10).Name

知道项目名称是" Something",我想得到索引:

.PivotItem(THISNUMBER).Name

更新 根据Marco Getrost的回答,我最终得到了错误。它可以使用example file进行复制。我一直在"错误2042"。我没有收到错误的唯一情况是当我选择PageFilter上的项目作为唯一项目时(没有启用多项选择) - 在这种情况下,我总是得到位置编号1.

在示例文件中,我想获取名称=" 6"的项目的位置编号。这显然是7。

1 个答案:

答案 0 :(得分:2)

试试这个:

Sub test()

Dim pvItem As PivotItem
Dim c as Long

For Each pvItem in ActiveSheet.PivotTables(1).PivotFields("MyFiledName").PivotItems

c = c+1
If pvItem.Name = "Something" Then Exit For

Next pvItem

'THISNUMBER = c

End Sub
编辑:在检查了官方documentation后(这真的很有用),答案是肯定的,这就是:

THISNUMBER = ActiveSheet.PivotTables(1).PivotFields("MyFiledName").PivotItems("Something").Position