无法将数据透视表字段设置为隐藏

时间:2014-03-27 23:40:26

标签: excel vba excel-vba

希望这将是一个简单的,但我找不到这个特定场景的答案。我使用以下代码根据用户选择隐藏和取消隐藏数据透视字段。变量fieldShow是一个布尔值,如果用户想要查看该特定字段,则为true,而fieldLastVal是一个布尔值,用于指示该字段当前是否显示。

If fieldShow <> fieldLastVal Then
    If fieldShow Then
        With pt.PivotFields(fieldName)
            .Orientation = xlDataField
            .Function = xlSum
        End With
    Else
        pt.PivotFields(fieldName).Orientation = xlHidden
    End If
End If
fieldLastVal = fieldShow

问题在于隐藏枢轴字段。问题是,代码执行得很好。没有错误,没有任何错误。但是,它实际上从未隐藏过枢轴字段。它仍然存在,好像什么都没发生。我逐步完成了代码,这条线肯定会执行,它对数据透视表没有任何影响,我也不明白为什么。

将枢轴字段的方向设置为xlDataField的行具有所需的效果。我不确定这里发生了什么。

Anythoughts?

1 个答案:

答案 0 :(得分:0)

将数据透视字段的Orientation更改为xlDataField会更改其名称,例如,从“我的数据”更改为“我的数据计数”。因此,如果您尝试将“我的数据计数”设置为隐藏,您实际上可能会对“我的数据”进行操作。