Pessoal ,tudo bem?
Meus conhecimentos em macro realmente não são avançados, mas até consigo fazer algo. Gostaria de entender poque a macro fica rorando sem parar.
A macro roda perfeitamente mas fica calculando e preciso apertar "ESC" para parar. Alguém pode me ajudar nessa?
O código que estou usando é:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
On Error Resume Next
If ActiveSlicer.Name = "SEGMENTAÇÃODEDADOS_OPÇÃO_8" Then
Call Macro2
Exit Sub
End If
End Sub
_______
Sub Macro2()
Application.ScreenUpdating = False
If Range("O1") = "(Tudo)" Then
With ActiveSheet.PivotTables("Mantido").PivotFields("opção 6")
.PivotItems("2015").Visible = True
.PivotItems("2016").Visible = True
.PivotItems("2017").Visible = True
End With
Range("D20").Select
ActiveSheet.PivotTables("Mantido").PivotFields("Cliente Ajustado").AutoSort _
xlDescending, "Soma de Soma de VALOR LIQUIDO", ActiveSheet.PivotTables( _
"Mantido").PivotColumnAxis.PivotLines(3), 1
End If
If Range("O1") = "1° tri" Then
With ActiveSheet.PivotTables("Mantido").PivotFields("opção 6")
.PivotItems("2015").Visible = False
.PivotItems("2016").Visible = True
.PivotItems("2017").Visible = True
End With
Range("C20").Select
ActiveSheet.PivotTables("Mantido").PivotFields("Cliente Ajustado").AutoSort _
xlDescending, "Soma de Soma de VALOR LIQUIDO", ActiveSheet.PivotTables( _
"Mantido").PivotColumnAxis.PivotLines(2), 1
End If
If Range("O1") = "2° tri" Then
With ActiveSheet.PivotTables("Mantido").PivotFields("opção 6")
.PivotItems("2015").Visible = True
.PivotItems("2016").Visible = True
End With
Range("C20").Select
ActiveSheet.PivotTables("Mantido").PivotFields("Cliente Ajustado").AutoSort _
xlDescending, "Soma de Soma de VALOR LIQUIDO", ActiveSheet.PivotTables( _
"Mantido").PivotColumnAxis.PivotLines(2), 1
End If
If Range("O1") = "3° tri" Then
With ActiveSheet.PivotTables("Mantido").PivotFields("opção 6")
.PivotItems("2015").Visible = True
.PivotItems("2016").Visible = True
End With
Range("C20").Select
ActiveSheet.PivotTables("Mantido").PivotFields("Cliente Ajustado").AutoSort _
xlDescending, "Soma de Soma de VALOR LIQUIDO", ActiveSheet.PivotTables( _
"Mantido").PivotColumnAxis.PivotLines(2), 1
End If
If Range("O1") = "4° tri" Then
With ActiveSheet.PivotTables("Mantido").PivotFields("opção 6")
.PivotItems("2015").Visible = True
.PivotItems("2016").Visible = True
End With
Range("C20").Select
ActiveSheet.PivotTables("Mantido").PivotFields("Cliente Ajustado").AutoSort _
xlDescending, "Soma de Soma de VALOR LIQUIDO", ActiveSheet.PivotTables( _
"Mantido").PivotColumnAxis.PivotLines(2), 1
End If
Application.ScreenUpdating = True
End Sub
Postado : 21/03/2017 1:45 pm