0
我有一个数据透视表和下面的VBA显示第一行字段的msgbox,但我需要它通过显示每个消息框的所有行字段,可以有人点我在正确的方向,我似乎无法找出如何做到这一点Excel VBA读数据透视表并显示msgbox
Sub Piv()
Dim PvTable As PivotTable
Dim PvField As PivotField
Dim PvItem As PivotItem
Set PvTable = ActiveSheet.PivotTables("RawDataTable")
Set PvField = PvTable.RowFields(1)
With ws
For Each PvItem In PvField.PivotItems
MsgBox PvItem
Next
End With
End Sub
我也可以把它给我所有的字段标题,而不是数据
Sub Piv()
Dim PvTable As PivotTable
Dim PvField As PivotField
Dim PvItem As PivotItem
Set PvTable = ActiveSheet.PivotTables("RawDataTable")
With ws
For Each PvField In PvTable.PivotFields
MsgBox PvField
Next
End With
End Sub
我可能失去了一些东西,但在第一个例子中,你能不能换你的'For'循环在另一个'For'循环中:'对于PvTable.RowFields中的每个PvField' – bobajob
这有效,但它循环错误,它给了我所有的第一列数据,然后第二列等等,但我想穿过整行然后移动到下一个 – Jeffrey
出于好奇,这些消息框的意图是什么?用户在每个显示器后都需要做什么?你会给用户一种退出程序的途径吗? – jeffreyweir