相关疑难解决方法(0)

加快数据透视表过滤VBA代码

我有一个带有枢轴字段的数据透视表,包含许多项目.我有VBA代码逻辑来决定是否应该显示数据透视值.问题是excel重新计算显示或隐藏的每个字段的数据透视表,这使得它非常慢.在设置了所有值之后,我想要一次只重新计算一次的东西.我尝试使用Application.Calculation = xlCalculationManual,但它没有帮助.

我正在使用的vba代码是这样的

For i = 1 To oPivotField.PivotItems.Count
    If (oPivotField.PivotItems(i).Name = "TestCondition") Then
        oPivotField.PivotItems(i).Visible = True   'Recalulates pivot table
    Else
        oPivotField.PivotItems(i).Visible = False 'Recalulates pivot table
    End If
Next
Run Code Online (Sandbox Code Playgroud)

我要手动取消选中"全部显示"框并重新检查我想要的字段.这会导致Excel重新计算一次并仅显示我想要的透视项目.我想通过VBA代码做同样的事情.

我甚至尝试过使用

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Run Code Online (Sandbox Code Playgroud)

但没有奏效.

excel vba pivot-table excel-vba

7
推荐指数
2
解决办法
3万
查看次数

标签 统计

excel ×1

excel-vba ×1

pivot-table ×1

vba ×1