0

3 つのフィールドから作成されたピボット テーブルがあります (例):

field1 の値: "1", "3", "5"
field2 の値: "A", "B", "C"
field3 の値:"X", "Y", "Z"

したがって、ピボット テーブル PT1 が与えられた場合、同様の方法でテーブル内のセルを参照しPT1["1"]["B"]["Y"]、Range アイテムを取得したいと考えています。これは可能ですか?ありがとう。

編集: コード:

Public Sub ColorIt2()
Dim rng As Range

For Each t_item In ActiveSheet.PivotTables("PivotTable1").PivotFields("F1").PivotItems
For Each r_item In ActiveSheet.PivotTables("PivotTable1").PivotFields("F2").PivotItems
    For Each h_item In ActiveSheet.PivotTables("PivotTable1").PivotFields("F3").PivotItems
        For Each b_item In ActiveSheet.PivotTables("PivotTable1").PivotFields("F4").PivotItems

            If t_item.RecordCount <> 0 Or _
                r_item.RecordCount <> 0 Or _
                h_item.RecordCount <> 0 Or _
                b_item.RecordCount <> 0 Then
                    Set rng = ActiveSheet.PivotTables("PivotTable1").GetPivotData(t_item, r_item, h_item, b_item)
                    rng.Select
                    Selection.Interior.ColorIndex = 40
                    Selection.Interior.Pattern = xlSolid
                End If
            End If
        Next b_item
    Next h_item
Next r_item
Next t_item

End Sub
4

1 に答える 1

0

確かではありませんが、おそらくGetPivotData関数が必要ですか?

于 2010-08-31T19:17:04.467 に答える