Acelere o código VBA da filtragem de tabela dinâmica

Tenho uma tabela dinâmica com um campo dinâmico e contém muitos itens. Eu tenho lógica de código VBA para decidir se o valor do pivô deve ser visível ou não. O problema é que o Excel recalcula a tabela dinâmica para cada campo mostrado ou oculto, o que a torna muito lenta. Eu gostaria de algo em que recalcula apenas uma vez, depois que todos os valores estiverem definidos. Tentei usar Application.Calculation = xlCalculationManual, mas não ajudou.

ódigo @vba que eu estou usando é algo como isto

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

Eu devo fazer isso manualmente desmarcando a caixa "mostrar tudo" e verifique novamente os campos que eu quero que sejam visíveis. Isso faz com que o Excel recalcule uma vez e mostre apenas os itens dinâmicos que eu quero visíveis. Gostaria de fazer a mesma coisa via código VBA.

Eu tentei usar

Application.ScreenUpdating = False
Application.DisplayAlerts = False

mas não funciono

questionAnswers(5)

yourAnswerToTheQuestion