使用 Excel VBA 筛选数据透视表 table 行标签

Filter pivot table row label using Excel VBA

如何使用 Excel VBA 过滤数据透视表 table 中的行标签以仅显示等于或小于 7 的值?

数据透视表 table 引用的列显示距任务截止日期还有多少天。我希望它自动只显示 7 天或更短的项目。在网上进行一些研究后,我发现我可以告诉枢轴 table 排除某些值 - 按照以下行:

Set pf = ActiveSheet.PivotTables("PivotTable1").PivotFields("Days_Due")
    pf.PivotItems("8").Visible = False

但这是行不通的,因为我无法将任何非 7 或更小的可能数字编程为不可见。有没有更简洁的方法来做到这一点?谢谢

您可以使用标签过滤器:

Set pf = ActiveSheet.PivotTables("PivotTable1").PivotFields("Days_Due")
pf.PivotFilters.Add Type:=xlCaptionIsLessThan, Value1:="8"