我对数据透视表有问题。 首先,我设置了过滤器(例如如下所示),以便从我的PivotTable_1和Graph中隐藏小于零的值。
ActiveSheet.PivotTables("PivotTable_1").PivotFields( _
"Value_XXX").PivotFilters.Add2 Type:=xlValueIsGreaterThan, DataField _
:=ActiveSheet.PivotTables("PivotTable_1").PivotFields( _
"Value (2018)"), Value1:=0
但是当我重置SlicerCaches / Filter(使用一次单击)时(在VBA中,下面的代码),filter忘记了我以前的设置(Value_XXX> 0)。
ActiveWorkbook.SlicerCaches("Value_XXX").ClearManualFilter
我尝试通过下面的代码修复它,但它会导致无限循环
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
If Target.Name = "PivotTable_1" Then
'MsgBox ("Hello")
ActiveSheet.PivotTables("PivotTable_1").PivotFields("Value_XXX"). _
PivotFilters.Add2 Type:=xlValueIsGreaterThan, DataField:=ActiveSheet. _
PivotTables("Kontingenčná tabuľka1").PivotFields("Value (2018)"), _
Value1:=0
End If
End Sub
有解决方案吗?非常感谢:)