2010-08-31 41 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

相关问题