我有一个包含初始三个行标签字段的Excel 2010数据透视表。
我需要创建一个宏,将某个字段添加为数据透视表中最低的行标签字段。(由于某些原因,用户无法自己以正常方式添加此字段。)
然而,在用户运行此宏时,他们可能已经添加或删除了一些行标签。
当我在具有3个行标签的数据透视表中添加一个字段时(位于最低位置),宏录制器会给我这个结果:
如果用户添加或删除了一些项目,那么位置号4就是不正确的。我该如何将正确的位置号传递到我的代码中?
试图使用“Position = 99”来达到更高的目标会导致以下错误:
“无法设置PivotField类的Position属性”
有什么建议吗?
我需要创建一个宏,将某个字段添加为数据透视表中最低的行标签字段。(由于某些原因,用户无法自己以正常方式添加此字段。)
然而,在用户运行此宏时,他们可能已经添加或删除了一些行标签。
当我在具有3个行标签的数据透视表中添加一个字段时(位于最低位置),宏录制器会给我这个结果:
With ActiveSheet.PivotTables("MyPivotTable").PivotFields("MyNewField")
.Orientation = xlRowField
.Position = 4
End With
如果用户添加或删除了一些项目,那么位置号4就是不正确的。我该如何将正确的位置号传递到我的代码中?
试图使用“Position = 99”来达到更高的目标会导致以下错误:
“无法设置PivotField类的Position属性”
有什么建议吗?
PivotFields.Count
给出的是总字段数,而不仅仅是显示的数量 :) - Siddharth RoutRowFields.Count
。非常有用,非常感谢! - Andi Mohr