过滤数据透视表列

问题描述 投票:0回答:1

我试着看了这个论坛和其他人,但我找不到正确的工作代码了。

我想在数据透视表上过滤一个值等于或大于10%的列。当我录制我的宏时,代码如下:

Sub Macro9()
Macro9 Macro
ActiveSheet.Range("$A$5:$M$36607").AutoFilter Field:=13, Criteria1:=">=0.1" _
    , Operator:=xlAnd

End Sub

这不起作用,但我想在之后启动宏。

所以我尝试了其他代码,如下所示:

 Sub FilterPivotTable()

 Application.ScreenUpdating = False
 ActiveSheet.PivotTables("PivotTable1").ManualUpdate = True

  ActiveSheet.PivotTables("PivotTable1").PivotFields("Name of my column").ClearAllFilters

  ActiveSheet.PivotTables("PivotTable1").PivotFields("Name of my column").PivotFilters. _
Add Type:=xlCaptionEquals, Value1:=">=0.1"

ActiveSheet.PivotTables("PivotTable1").ManualUpdate = False
Application.ScreenUpdating = True
End Sub

但这也不起作用。

谁能帮帮我吗?非常感谢你提前。

编辑:显然,我的字段是计算字段的事实很重要。尽管如此,仍然没有答案。

vba filter filtering pivot-table calculated-columns
1个回答
0
投票

所以,我发现自己回答了我的问题。

由于我想要过滤的列是值和计算字段,我实际上需要通过右键单击我的PVT的行值内的单元格来过滤这些列。然后,我必须通过选择正确的值进行筛选以对我的条件进行排序和添加。录制宏时的代码如下:

ActiveSheet.PivotTables("PivotTable1").ClearAllFilters
ActiveSheet.PivotTables("PivotTable1").PivotFields("Your row name").PivotFilters. _
Add2 Type:=xlValueIsGreaterThanOrEqualTo, DataField:=ActiveSheet. _
PivotTables("PivotTable1").PivotFields("Your value field"), Value1:=0.1

希望它可以帮助你们中的一些人,因为我在很多论坛上都没有看到这个问题的答案。

祝你今天愉快!

© www.soinside.com 2019 - 2024. All rights reserved.