如何获得枢纽项目指数,知道它的名字

如何获得VBA枢纽项目索引知道枢轴项目的名称?

我想要得到与此相反的结果:

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

知道这个项目的名字是“Something”,我想要索引:

 .PivotItem(THISNUMBER).Name 

更新。 在Marco Getrost的回答之后,我终于出错了。 它可以使用示例文件进行复制。 我不断收到“错误2042”。 唯一没有出错的情况是当我在PageFilter上select项目作为唯一的项目(没有启用多重select) – 在这种情况下我总是得到位置号码1。

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

尝试这个:

 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 

编辑:在检查官方文档 (这真的很有帮助)后,答案是肯定的,这是如何:

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