我正在尝试列出数据透视表的行标签,但无法访问它们。它们不会显示为行标签,所以我不确定。
示例:
Row Labels Sum of Resources
---------- ----------------
item 1 1
item 2 4
item 3 2
我希望能够访问item1
,item2
和item3
。
我到目前为止的代码在下面,它可以完成我想要的除了之外的访问项目1至3:
Dim item As Variant
For Each item In ActiveSheet.PivotTables("Pivot1"). _
PivotFields("Sum of Resource").DataRange
Debug.Print item;
Next item
答案 0 :(得分:1)
在我们的comments上,这不是不是获取数据摘要的最佳方法,但是您似乎很确定,并且没有关于所拥有和所拥有的信息的更多信息尝试这样做,我只想知道为什么您不仅仅引用标签单元格 “像其他任何单元格一样” 。
示例:
=D2
返回A
,这是数据透视表的第一个标签。GetPivotData
设置和功能 请注意,带有上述示例的公式的显示可能会有所不同,具体取决于您对“ Use GetPivotData functions for PivotTable references
” 的设置(在“选项”中)(未选择“我的”),但是两种方法的最终结果都是相同的。
GetPivotData
的更多信息。DataLabelRange
属性还有其他几种引用数据透视表的[任何]部分的方法,如果数据经常更改,则某些方法比其他方法更可靠。另一种选择是使用 DataLabelRange
属性。
DataLabelRange
属性的更多信息。答案 1 :(得分:1)
我能够弄清楚该怎么做。不知道是否有人遇到此问题,但是下面的代码将列出所有行标签。
'Get Row labels
For Each item In ActiveSheet.PivotTables("Pivot-Table").RowRange
If Not count = 0 And Not count = ActiveSheet.PivotTables("Pivot-Table").RowRange.count - 1 Then
Debug.Print item
End If
count = count + 1
Next item
此代码将打印所有行标签,从而忽略总计和行标签标题