2010-08-31 68 views
0

我具有3個字段創建的樞軸表,其中(例如):如何使用字段值引用數據透視表中的單元格?

FIELD1的值是:"1", "3", "5"
FIELD2值是:"A", "B", "C"
字段3的值是:"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 
+0

修復:將錯誤的第一個參數發送給GetPivotDate。這不是一個數據字段。通過發送(在我的情況下)「SUM」作爲第一個參數來解決。謝謝! :) – mathon12 2010-08-31 20:01:00

回答

0

不知道,但也許你想要的GetPivotData功能?

+0

或者,也許這一個http://msdn.microsoft.com/en-us/library/aa195746(office.11​​).aspx使用VBA。我收到一個未定義的錯誤:S – mathon12 2010-08-31 19:29:40

+0

@ mathon12:你怎麼稱呼它?編輯你的問題,請包括一些代碼。 – GSerg 2010-08-31 19:40:00

+0

好的,補充說。我覺得它有兩個完全不同的接口,這似乎很奇怪。 – mathon12 2010-08-31 19:47:03

相關問題