VBA单选在数据透视表字段过滤器上

时间:2017-06-05 01:39:42

标签: excel vba excel-vba

我正在处理PivotTable字段的VBA代码。

我想要实现的是仅在字段Acc Payable中选择Group。以下代码可以帮助我获得我想要的内容,但我正在考虑是否有办法删除这些False行并缩短代码?

With ActiveSheet.PivotTables("PivotTable1").PivotFields("Group")
        .PivotItems("Acc Services").Visible = False
        .PivotItems("FRG").Visible = False
        .PivotItems("Non FinOps").Visible = False
        .PivotItems("Semi Auto").Visible = False
        .PivotItems("Acc Payable").Visible = True
    End With
        End With

1 个答案:

答案 0 :(得分:2)

您可以使用For循环来遍历PivotField名为“群组”PivotItems,如果PivotItem.Name = "Acc Payable"然后将其显示。

<强>代码

Dim PvtItm As PivotItem

For Each PvtItm In ActiveSheet.PivotTables("PivotTable1").PivotFields("Group").PivotItems
    If PvtItm.Name = "Acc Payable" Then
        PvtItm.Visible = True
    Else
        PvtItm.Visible = False
    End If
Next PvtItm