Problemas com filtros de tabelas dinâmicas no VBA

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 3:28 pm

Boa tarde!

Poderiam me ajudar?

Criei um filtro automático de datas nas minhas tabelas dinâmicas como declarado abaixo:

For Each PvI In pvtSLA.PivotFields(strNomeCampo).PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

Após a execução do filtro de acordo com a data informada no inputbox as informações das tabelas dinâmicas (número de chamados por exemplo) são populadas na máscara da planilha principal. Além, faço um link de resumo, onde "explodo" essa tabela filtrada.

Meu problema é que essa execução é diária, porém há dias que não constam nas tabelas dinâmicas (determinado dia não foi aberto nenhum chamado, por exemplo), quando isso ocorre, o código dá erro.

Como faço para contornar isso e manter correta a população na máscara principal além de não explodir as tabelas que não possuem esse dia?

Desde já agradeço!
dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

{ SO_SELECT }

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor klarc28 » Qui Jan 11, 2018 3:54 pm

Por que você não anexou o arquivo?
Quando quiser agradecer, clique no joinha. Marque como resolvido na parte que resolveu sua dúvida.
klarc28
Membro
Membro
 
Mensagens: 970
Registrado em: Sáb Dez 09, 2017 12:33 am
Has thanked: 22 times
Have thanks: 405 times

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor xlarruda » Qui Jan 11, 2018 4:14 pm

Talvez poderia ser resolvido com: On Error Resume Next, mas não dá pra saber seu ver seu cógido completo.


Abrç!
___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda
Avatar do usuário
xlarruda
Membro
Membro
 
Mensagens: 792
Registrado em: Qua Out 04, 2017 9:41 am
Localização: Cuiabá-MT
Has thanked: 97 times
Have thanks: 319 times

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 4:36 pm

Código da atualização das planilhas:

Option Explicit
Sub AtualizarDaily()

Dim dDataRef As Variant
Dim arrDataRef() As String
Dim PvI As PivotItem
Dim arrPvI() As String
Dim SLADiario As PivotTable
Dim SLAAcumulado As PivotTable
Dim BacklogChassi As PivotTable
Dim BacklogCarroceria As PivotTable
Dim BacklogDiesel As PivotTable
Dim BacklogSpot As PivotTable
Dim BacklogVTR As PivotTable
Dim SLADiarioPortal1 As PivotTable
Dim SLADiarioPortal2 As PivotTable
Dim SLADiarioPortal3 As PivotTable
Dim SLADiarioPortal4 As PivotTable
Dim SLADiarioPortal5 As PivotTable
Dim SLADiarioPortal6 As PivotTable
Dim SLADiarioPortal7 As PivotTable
Dim SLADiarioPortal8 As PivotTable
Dim SLAAcumuladoPortal1 As PivotTable
Dim SLAAcumuladoPortal2 As PivotTable
Dim SLAAcumuladoPortal3 As PivotTable
Dim SLAAcumuladoPortal4 As PivotTable
Dim SLAAcumuladoPortal5 As PivotTable
Dim SLAAcumuladoPortal6 As PivotTable
Dim SLAAcumuladoPortal7 As PivotTable
Dim SLAAcumuladoPortal8 As PivotTable
Dim wbDaily As Workbook
Dim ws As Worksheet
Dim shRelatorio As Worksheet
Dim rngSLA As Range
Dim intColSLA As Integer

For Each ws In ThisWorkbook.Worksheets
ws.Unprotect ("peg#2017")
Next ws

ThisWorkbook.RefreshAll

Application.DisplayAlerts = False
Application.ScreenUpdating = False


dDataRef = InputBox("Digite a data de referência no formato dd/mm/aaaa: ")
dDataRef = Format(dDataRef, "m/d/yyyy")

'======= Aqui pode dar problema com o formato da data! ================================

arrDataRef = Split(dDataRef, "/")

Set SLADiario = SLADia.PivotTables("PivotTable1")

SLADiario.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems(dDataRef).Visible = True

'======= Atualizando filtro da data de entrega do SLA Diário Globus ================================

For Each PvI In SLADiario.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

'======= Atualizando filtro das datas de entrega do SLA Acumulado Globus ================================

Set SLAAcumulado = SLAAcum.PivotTables("PivotTable1")

SLAAcumulado.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumulado.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

'======= Atualizando filtro da data de encerramento do chamado do SLA Diário Portal ================================

Set SLADiarioPortal1 = SLADiaPortal.PivotTables("PivotTable1")
Set SLADiarioPortal2 = SLADiaPortal.PivotTables("PivotTable2")
Set SLADiarioPortal3 = SLADiaPortal.PivotTables("PivotTable3")
Set SLADiarioPortal4 = SLADiaPortal.PivotTables("PivotTable4")
Set SLADiarioPortal5 = SLADiaPortal.PivotTables("PivotTable5")
Set SLADiarioPortal6 = SLADiaPortal.PivotTables("PivotTable6")
Set SLADiarioPortal7 = SLADiaPortal.PivotTables("PivotTable7")
Set SLADiarioPortal8 = SLADiaPortal.PivotTables("PivotTable8")

For Each PvI In SLADiarioPortal1.PivotFields("data_de_encerramento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal2.PivotFields("data_de_encerramento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal3.PivotFields("data_de_fechamento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal4.PivotFields("data_de_fechamento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal5.PivotFields("data_de_fechamento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal6.PivotFields("data_de_fechamento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal7.PivotFields("data_de_encerramento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next

For Each PvI In SLADiarioPortal8.PivotFields("data_de_fechamento").PivotItems

If PvI <> dDataRef Then
PvI.Visible = False
End If

Next


'======= Atualizando filtro das datas de encerramento dos chamados do SLA Acumulado Portal ================================

Set SLAAcumuladoPortal1 = SLAAcumPortal.PivotTables("PivotTable1")
Set SLAAcumuladoPortal2 = SLAAcumPortal.PivotTables("PivotTable2")
Set SLAAcumuladoPortal3 = SLAAcumPortal.PivotTables("PivotTable3")
Set SLAAcumuladoPortal4 = SLAAcumPortal.PivotTables("PivotTable4")
Set SLAAcumuladoPortal5 = SLAAcumPortal.PivotTables("PivotTable5")
Set SLAAcumuladoPortal6 = SLAAcumPortal.PivotTables("PivotTable6")
Set SLAAcumuladoPortal7 = SLAAcumPortal.PivotTables("PivotTable7")
Set SLAAcumuladoPortal8 = SLAAcumPortal.PivotTables("PivotTable8")

SLAAcumuladoPortal1.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal1.PivotFields("data_de_encerramento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal2.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal2.PivotFields("data_de_encerramento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal3.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal3.PivotFields("data_de_fechamento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal4.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal4.PivotFields("data_de_fechamento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal5.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal5.PivotFields("data_de_fechamento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal6.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal6.PivotFields("data_de_fechamento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal7.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal7.PivotFields("data_de_encerramento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

SLAAcumuladoPortal8.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True

For Each PvI In SLAAcumuladoPortal8.PivotFields("data_de_fechamento").PivotItems

arrPvI = Split(PvI, "/")

If PvI = "(blank)" Or PvI = "(vazio)" Then
PvI.Visible = False
ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then 'Testando se tem o mesmo mês e ano
PvI.Visible = False
ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
PvI.Visible = False
Else
PvI.Visible = True
End If

Next

'======= Atualizando filtro de pedidos não entregues do backlog de Chassi ================================

Set BacklogChassi = Chassi.PivotTables("PivotTable3")

BacklogChassi.PivotFields("NO_PEDIDO").ClearAllFilters 'Atenção se o Excel for em português!
BacklogChassi.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!

'======= Atualizando filtro de pedidos não entregues do backlog de Carroceria ================================

Set BacklogCarroceria = Carroceria.PivotTables("PivotTable3")

BacklogCarroceria.PivotFields("NO_PEDIDO").ClearAllFilters 'Atenção se o Excel for em português!
BacklogCarroceria.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
'BacklogCarroceria.PivotFields("NO_PEDIDO").PivotItems("228032").Visible = False 'Pedido com problema Globus

'======= Atualizando filtro de pedidos não entregues do backlog de Diesel ================================

Set BacklogDiesel = Diesel.PivotTables("PivotTable3")

BacklogDiesel.PivotFields("NO_PEDIDO").ClearAllFilters 'Atenção se o Excel for em português!
BacklogDiesel.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!


'======= Atualizando filtro de pedidos não entregues do backlog de Spot ================================

Set BacklogSpot = Spot.PivotTables("PivotTable3")

BacklogSpot.PivotFields("NO_PEDIDO").ClearAllFilters 'Atenção se o Excel for em português!
BacklogSpot.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!


'======= Atualizando filtro de pedidos não entregues do backlog de VTR ================================

Set BacklogVTR = VTR.PivotTables("PivotTable3")

BacklogVTR.PivotFields("NO_PEDIDO").ClearAllFilters 'Atenção se o Excel for em português!
BacklogVTR.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
'BacklogVTR.PivotFields("NO_PEDIDO").PivotItems("228290").Visible = False 'Pedido com problema Globus



'======= Atualizando filtro de solicitacoes do backlog de Chassi ================================
Set BacklogChassi = Nothing
Set BacklogChassi = Chassi.PivotTables("PivotTable2")

BacklogChassi.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!
On Error Resume Next
BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("9234917").Visible = False 'Erro Globus (cot. aberta e fechada)
On Error GoTo 0

Set BacklogChassi = Nothing
Set BacklogChassi = Chassi.PivotTables("PivotTable1")

BacklogChassi.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!

'== Usar comandos abaixo somente se o campo "NO COTACAO" não estiver com a opção 'em branco' selecionada

' For Each PvI In BacklogChassi.PivotFields("NO_COTACAO").PivotItems
'
' If PvI = "(blank)" Or PvI = "(vazio)" Then
' PvI.Visible = True
' Else
' PvI.Visible = False
' End If
'
' Next

On Error Resume Next
BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0

'======= Atualizando filtro de solicitacoes do backlog de Carroceria ================================

Set BacklogCarroceria = Nothing
Set BacklogCarroceria = Carroceria.PivotTables("PivotTable2")

BacklogCarroceria.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!
On Error Resume Next
BacklogCarroceria.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0

Set BacklogCarroceria = Nothing
Set BacklogCarroceria = Carroceria.PivotTables("PivotTable1")

BacklogCarroceria.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!

'== Usar comandos abaixo somente se o campo "NO COTACAO" da 1º tabela dinâmica não estiver com a opção 'em branco' selecionada

' For Each PvI In BacklogCarroceria.PivotFields("NO_COTACAO").PivotItems
'
' If PvI = "(blank)" Or PvI = "(vazio)" Then
' PvI.Visible = True
' Else
' PvI.Visible = False
' End If
'
' Next

On Error Resume Next
BacklogCarroceria.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0

'======= Atualizando filtro de solicitacoes do backlog de Diesel ================================

Set BacklogDiesel = Nothing
Set BacklogDiesel = Diesel.PivotTables("PivotTable2")

BacklogDiesel.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!
On Error Resume Next
BacklogDiesel.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0

Set BacklogDiesel = Nothing
Set BacklogDiesel = Diesel.PivotTables("PivotTable1")

BacklogDiesel.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!

'== Usar comandos abaixo somente se o campo "NO COTACAO" da 1º tabela dinâmica não estiver com a opção 'em branco' selecionada

' For Each PvI In BacklogDiesel.PivotFields("NO_COTACAO").PivotItems
'
' If PvI = "(blank)" Or PvI = "(vazio)" Then
' PvI.Visible = True
' Else
' PvI.Visible = False
' End If
'
' Next

On Error Resume Next
BacklogDiesel.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0


'======= Atualizando filtro de solicitacoes do backlog de Spot ================================

Set BacklogSpot = Nothing
Set BacklogSpot = Spot.PivotTables("PivotTable2")

BacklogSpot.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!
On Error Resume Next
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9235864").Visible = False 'Erro Globus (cot. aberta e fechada)
On Error GoTo 0

Set BacklogSpot = Nothing
Set BacklogSpot = Spot.PivotTables("PivotTable1")

BacklogSpot.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!

'== Usar comandos abaixo somente se o campo "NO COTACAO" da 1º tabela dinâmica não estiver com a opção 'em branco' selecionada

' For Each PvI In BacklogSpot.PivotFields("NO_COTACAO").PivotItems
'
' If PvI = "(blank)" Or PvI = "(vazio)" Then
' PvI.Visible = True
' Else
' PvI.Visible = False
' End If
'
' Next

On Error Resume Next
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237783").Visible = False 'Regularização!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237784").Visible = False 'Regularização!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237785").Visible = False 'Regularização!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237786").Visible = False 'Regularização!
BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237787").Visible = False 'Regularização!
On Error GoTo 0


'======= Atualizando filtro de solicitacoes do backlog de VTR ================================

Set BacklogVTR = Nothing
Set BacklogVTR = VTR.PivotTables("PivotTable2")

BacklogVTR.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!
On Error Resume Next
BacklogVTR.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0

Set BacklogVTR = Nothing
Set BacklogVTR = VTR.PivotTables("PivotTable1")

BacklogVTR.PivotFields("NO_SOLICITACAO").ClearAllFilters 'Atenção se o Excel for em português!

'== Usar comandos abaixo somente se o campo "NO COTACAO" da 1º tabela dinâmica não estiver com a opção 'em branco' selecionada

' For Each PvI In BacklogVTR.PivotFields("NO_COTACAO").PivotItems
'
' If PvI = "(blank)" Or PvI = "(vazio)" Then
' PvI.Visible = True
' Else
' PvI.Visible = False
' End If
'
' Next

On Error Resume Next
BacklogVTR.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False 'Atenção se o Excel for em português!
On Error GoTo 0



'======= Gerando tabelas com pedidos entregues fora do prazo ================================

Set wbDaily = ActiveWorkbook


'' CHASSI
'
' SLADiario.Range("C17").ShowDetail = True
' Set shRelatorio = wbDaily.Sheets(ActiveSheet.Name)
'
' Set rngSLA = shRelatorio.Range("1:1").Find("ATENDIMENTO_SLA")
' intColSLA = rngSLA.Column
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter Field:=intColSLA, Criteria1:="0"
' shRelatorio.Range("1:1").Find("FORA_DO_PRAZO").EntireColumn.Delete
' shRelatorio.Range("1:1").Find("Nome_Arquivo").EntireColumn.Delete
' shRelatorio.Range("1:1").Find(What:="TIPO_SOLIC", LookAt:=xlWhole).EntireColumn.Delete
' wbDaily.Sheets("CHASSI ITENS ENTREGUES").Delete
' shRelatorio.Name = "CHASSI ITENS ENTREGUES"
' shRelatorio.Tab.Color = RGB(255, 192, 0)
' shRelatorio.Move before:=wbDaily.Sheets("CHASSI")
'
''CARROCERIA
'
' SLADiario.Range("C16").ShowDetail = True
' Set shRelatorio = wbDaily.Sheets(ActiveSheet.Name)
'
' Set rngSLA = shRelatorio.Range("1:1").Find("ATENDIMENTO_SLA")
' intColSLA = rngSLA.Column
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter Field:=intColSLA, Criteria1:="0"
' shRelatorio.Range("1:1").Find("FORA_DO_PRAZO").EntireColumn.Delete
' shRelatorio.Range("1:1").Find("Nome_Arquivo").EntireColumn.Delete
' shRelatorio.Range("1:1").Find(What:="TIPO_SOLIC", LookAt:=xlWhole).EntireColumn.Delete
' wbDaily.Sheets("CARROCERIA ITENS ENTREGUES").Delete
' shRelatorio.Name = "CARROCERIA ITENS ENTREGUES"
' shRelatorio.Tab.Color = RGB(255, 192, 0)
' shRelatorio.Move before:=wbDaily.Sheets("CARROCERIA")
'
''DIESEL
'
' SLADiario.Range("C18").ShowDetail = True
' Set shRelatorio = wbDaily.Sheets(ActiveSheet.Name)
'
' Set rngSLA = shRelatorio.Range("1:1").Find("ATENDIMENTO_SLA")
' intColSLA = rngSLA.Column
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter Field:=intColSLA, Criteria1:="0"
' shRelatorio.Range("1:1").Find("FORA_DO_PRAZO").EntireColumn.Delete
' shRelatorio.Range("1:1").Find("Nome_Arquivo").EntireColumn.Delete
' shRelatorio.Range("1:1").Find(What:="TIPO_SOLIC", LookAt:=xlWhole).EntireColumn.Delete
' wbDaily.Sheets("DIESEL, LUB E ARLA ITENS ENTREG").Delete
' shRelatorio.Name = "DIESEL, LUB E ARLA ITENS ENTREG"
' shRelatorio.Tab.Color = RGB(255, 192, 0)
' shRelatorio.Move before:=wbDaily.Sheets("DIESEL, LUB E ARLA")
'
''SPOT
'
' SLADiario.Range("C19").ShowDetail = True
' Set shRelatorio = wbDaily.Sheets(ActiveSheet.Name)
'
' Set rngSLA = shRelatorio.Range("1:1").Find("ATENDIMENTO_SLA")
' intColSLA = rngSLA.Column
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter Field:=intColSLA, Criteria1:="0"
' shRelatorio.Range("1:1").Find("FORA_DO_PRAZO").EntireColumn.Delete
' shRelatorio.Range("1:1").Find("Nome_Arquivo").EntireColumn.Delete
' shRelatorio.Range("1:1").Find(What:="TIPO_SOLIC", LookAt:=xlWhole).EntireColumn.Delete
' wbDaily.Sheets("LIMPEZA ITENS ENTREGUES").Delete
' shRelatorio.Name = "LIMPEZA ITENS ENTREGUES"
' shRelatorio.Tab.Color = RGB(255, 192, 0)
' shRelatorio.Move before:=wbDaily.Sheets("LIMPEZA E OUTROS")
'
''VTR
'
' SLADiario.Range("C20").ShowDetail = True
' Set shRelatorio = wbDaily.Sheets(ActiveSheet.Name)
'
' Set rngSLA = shRelatorio.Range("1:1").Find("ATENDIMENTO_SLA")
' intColSLA = rngSLA.Column
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter
' Range(Cells(1, 1), Cells(1, intColSLA)).AutoFilter Field:=intColSLA, Criteria1:="0"
' shRelatorio.Range("1:1").Find("FORA_DO_PRAZO").EntireColumn.Delete
' shRelatorio.Range("1:1").Find("Nome_Arquivo").EntireColumn.Delete
' shRelatorio.Range("1:1").Find(What:="TIPO_SOLIC", LookAt:=xlWhole).EntireColumn.Delete
' wbDaily.Sheets("VTR ITENS ENTREGUES").Delete
' shRelatorio.Name = "VTR ITENS ENTREGUES"
' shRelatorio.Tab.Color = RGB(255, 192, 0)
' shRelatorio.Move before:=wbDaily.Sheets("VTR")


Application.DisplayAlerts = True
Application.ScreenUpdating = True

Call AtualizaResumo.AtualizarResumo

ResumoGlobusAcum.Range("DataRef") = dDataRef

For Each ws In ThisWorkbook.Worksheets
ws.Protect ("peg#2017")
Next ws

MsgBox "Atualização concluída!"

End Sub
dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 4:39 pm

Código para popular a máscara:

Sub AtualizarResumo()

Set SLAAcumuladoPortal1 = SLAAcumPortal.PivotTables("PivotTable1")
Set SLAAcumuladoPortal2 = SLAAcumPortal.PivotTables("PivotTable2")
Set SLAAcumuladoPortal3 = SLAAcumPortal.PivotTables("PivotTable3")
Set SLAAcumuladoPortal4 = SLAAcumPortal.PivotTables("PivotTable4")
Set SLAAcumuladoPortal5 = SLAAcumPortal.PivotTables("PivotTable5")
Set SLAAcumuladoPortal6 = SLAAcumPortal.PivotTables("PivotTable6")
Set SLAAcumuladoPortal7 = SLAAcumPortal.PivotTables("PivotTable7")
Set SLAAcumuladoPortal8 = SLAAcumPortal.PivotTables("PivotTable8")
Set SLADiarioPortal1 = SLADiaPortal.PivotTables("PivotTable1")
Set SLADiarioPortal2 = SLADiaPortal.PivotTables("PivotTable2")
Set SLADiarioPortal3 = SLADiaPortal.PivotTables("PivotTable3")
Set SLADiarioPortal4 = SLADiaPortal.PivotTables("PivotTable4")
Set SLADiarioPortal5 = SLADiaPortal.PivotTables("PivotTable5")
Set SLADiarioPortal6 = SLADiaPortal.PivotTables("PivotTable6")
Set SLADiarioPortal7 = SLADiaPortal.PivotTables("PivotTable7")
Set SLADiarioPortal8 = SLADiaPortal.PivotTables("PivotTable8")
Set BacklogCompras1 = Compras.PivotTables("PivotTable1")
Set BacklogCompras2 = Compras.PivotTables("PivotTable2")
Set BacklogCadastro1 = Cadastro.PivotTables("PivotTable1")
Set BacklogCadastro2 = Cadastro.PivotTables("PivotTable2")
Set BacklogCadastro3 = Cadastro.PivotTables("PivotTable3")
Set BacklogCadastro4 = Cadastro.PivotTables("PivotTable4")
Set BacklogDelegadas = Delegadas.PivotTables("PivotTable1")
Set BacklogObras = Obras.PivotTables("PivotTable1")
Set SLAAcumulado = SLAAcum.PivotTables("PivotTable1")
Set SLADiario = SLADia.PivotTables("PivotTable1")
Set BacklogChassi1 = Chassi.PivotTables("PivotTable1")
Set BacklogChassi2 = Chassi.PivotTables("PivotTable2")
Set BacklogChassi3 = Chassi.PivotTables("PivotTable3")
Set BacklogCarroceria1 = Carroceria.PivotTables("PivotTable1")
Set BacklogCarroceria2 = Carroceria.PivotTables("PivotTable2")
Set BacklogCarroceria3 = Carroceria.PivotTables("PivotTable3")
Set BacklogDiesel1 = Diesel.PivotTables("PivotTable1")
Set BacklogDiesel2 = Diesel.PivotTables("PivotTable2")
Set BacklogDiesel3 = Diesel.PivotTables("PivotTable3")
Set BacklogSpot1 = Spot.PivotTables("PivotTable1")
Set BacklogSpot2 = Spot.PivotTables("PivotTable2")
Set BacklogSpot3 = Spot.PivotTables("PivotTable3")
Set BacklogVTR1 = VTR.PivotTables("PivotTable1")
Set BacklogVTR2 = VTR.PivotTables("PivotTable2")
Set BacklogVTR3 = VTR.PivotTables("PivotTable3")
Set Backlogregularizacao1 = REGULARIZACAO.PivotTables("PivotTable1")
Set Backlogregularizacao2 = REGULARIZACAO.PivotTables("PivotTable2")

'=========================== Atualizando o Resumo Portal Acumulado =============================================

' Atualizando Status Itens

Set rngAcumTar = ResumoPortalAcum.Range("ACUM_TAREFA")
Set rngTarefaSit = SLAAcumPortal.Range("TAREFA_SIT")
intLinInTar = rngAcumTar.Row + 1
intColTar = rngAcumTar.Column
intLinFinTar = rngAcumTar.End(xlDown).Row
intContador = intLinInTar
intContador2 = 1

SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado
SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas, para pegar o consolidado

Do While intContador < intLinFinTar

On Error GoTo Proximo1
ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 1).ClearContents
ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 3).ClearContents

ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 1).Value = rngTarefaSit.Offset(intContador2, 2).Value
ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 3).Value = rngTarefaSit.Offset(intContador2, 1).Value

Proximo1:
intContador = intContador + 1
intContador2 = intContador2 + 1
On Error GoTo 0

Loop

' Atualizando Empresas

Set rngPortalAcumEmp = ResumoPortalAcum.Range("ACUM_EMPRESA_PORTAL")
intLinInEmp = rngPortalAcumEmp.Row + 1
intColEmp = rngPortalAcumEmp.Column
intLinFinEmp = rngPortalAcumEmp.End(xlDown).Row
intContador = intLinInEmp

Do While intContador < intLinFinEmp

strEmpresa = ResumoPortalAcum.Cells(intContador, intColEmp).Value 'Pego o nome da categoria

SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 1

For Each PvI In SLAAcumuladoPortal1.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 2

For Each PvI In SLAAcumuladoPortal2.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 3

For Each PvI In SLAAcumuladoPortal3.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 4

For Each PvI In SLAAcumuladoPortal4.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 5

For Each PvI In SLAAcumuladoPortal5.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 6

For Each PvI In SLAAcumuladoPortal6.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 7

For Each PvI In SLAAcumuladoPortal7.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next

SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters 'Limpo filtro de empresas da tabela dinamica 8

For Each PvI In SLAAcumuladoPortal8.PivotFields("empresa").PivotItems
If PvI <> strEmpresa Then
PvI.Visible = False 'Tirar do filtro todas as outras empresas
End If
Next


On Error GoTo Proximo2
ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 1).ClearContents
ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 3).ClearContents

ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 1).Value = rngTarefaSit.Offset(5, 2).Value
ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 3).Value = rngTarefaSit.Offset(5, 1).Value

Proximo2:
intContador = intContador + 1
On Error GoTo 0

Loop

SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters
SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters
dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor klarc28 » Qui Jan 11, 2018 4:39 pm

Quando for inserir código, você deve clicar no botão code
Quando quiser agradecer, clique no joinha. Marque como resolvido na parte que resolveu sua dúvida.

For this post the author klarc28 thanked:
dasaiev (Qui Jan 11, 2018 4:50 pm)
klarc28
Membro
Membro
 
Mensagens: 970
Registrado em: Sáb Dez 09, 2017 12:33 am
Has thanked: 22 times
Have thanks: 405 times

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 4:43 pm

Código: Selecionar todos
Option Explicit
Sub AtualizarDaily()

Dim dDataRef As Variant
Dim arrDataRef() As String
Dim PvI As PivotItem
Dim arrPvI() As String
Dim SLADiario As PivotTable
Dim SLAAcumulado As PivotTable
Dim BacklogChassi As PivotTable
Dim BacklogCarroceria As PivotTable
Dim BacklogDiesel As PivotTable
Dim BacklogSpot As PivotTable
Dim BacklogVTR As PivotTable
Dim SLADiarioPortal1 As PivotTable
Dim SLADiarioPortal2 As PivotTable
Dim SLADiarioPortal3 As PivotTable
Dim SLADiarioPortal4 As PivotTable
Dim SLADiarioPortal5 As PivotTable
Dim SLADiarioPortal6 As PivotTable
Dim SLADiarioPortal7 As PivotTable
Dim SLADiarioPortal8 As PivotTable
Dim SLAAcumuladoPortal1 As PivotTable
Dim SLAAcumuladoPortal2 As PivotTable
Dim SLAAcumuladoPortal3 As PivotTable
Dim SLAAcumuladoPortal4 As PivotTable
Dim SLAAcumuladoPortal5 As PivotTable
Dim SLAAcumuladoPortal6 As PivotTable
Dim SLAAcumuladoPortal7 As PivotTable
Dim SLAAcumuladoPortal8 As PivotTable
Dim wbDaily As Workbook
Dim ws As Worksheet
Dim shRelatorio As Worksheet
Dim rngSLA As Range
Dim intColSLA As Integer

    For Each ws In ThisWorkbook.Worksheets
        ws.Unprotect ("peg#2017")
    Next ws

    ThisWorkbook.RefreshAll
   
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False


    dDataRef = InputBox("Digite a data de referência no formato dd/mm/aaaa: ")
    dDataRef = Format(dDataRef, "m/d/yyyy")

'======= Aqui pode dar problema com o formato da data! ================================
   
    arrDataRef = Split(dDataRef, "/")

    Set SLADiario = SLADia.PivotTables("PivotTable1")
   
    SLADiario.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems(dDataRef).Visible = True
       
'======= Atualizando filtro da data de entrega do SLA Diário Globus ================================

    For Each PvI In SLADiario.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
'======= Atualizando filtro das datas de entrega do SLA Acumulado Globus ================================
   
    Set SLAAcumulado = SLAAcum.PivotTables("PivotTable1")

    SLAAcumulado.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumulado.PivotFields("DATA_RECEBIMENTO_PEDIDO").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then 'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next
   
'======= Atualizando filtro da data de encerramento do chamado do SLA Diário Portal ================================

    Set SLADiarioPortal1 = SLADiaPortal.PivotTables("PivotTable1")
    Set SLADiarioPortal2 = SLADiaPortal.PivotTables("PivotTable2")
    Set SLADiarioPortal3 = SLADiaPortal.PivotTables("PivotTable3")
    Set SLADiarioPortal4 = SLADiaPortal.PivotTables("PivotTable4")
    Set SLADiarioPortal5 = SLADiaPortal.PivotTables("PivotTable5")
    Set SLADiarioPortal6 = SLADiaPortal.PivotTables("PivotTable6")
    Set SLADiarioPortal7 = SLADiaPortal.PivotTables("PivotTable7")
    Set SLADiarioPortal8 = SLADiaPortal.PivotTables("PivotTable8")

    For Each PvI In SLADiarioPortal1.PivotFields("data_de_encerramento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal2.PivotFields("data_de_encerramento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal3.PivotFields("data_de_fechamento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal4.PivotFields("data_de_fechamento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal5.PivotFields("data_de_fechamento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal6.PivotFields("data_de_fechamento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal7.PivotFields("data_de_encerramento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
    For Each PvI In SLADiarioPortal8.PivotFields("data_de_fechamento").PivotItems
   
        If PvI <> dDataRef Then
            PvI.Visible = False
        End If
   
    Next
   
   
'======= Atualizando filtro das datas de encerramento dos chamados do SLA Acumulado Portal ================================

    Set SLAAcumuladoPortal1 = SLAAcumPortal.PivotTables("PivotTable1")
    Set SLAAcumuladoPortal2 = SLAAcumPortal.PivotTables("PivotTable2")
    Set SLAAcumuladoPortal3 = SLAAcumPortal.PivotTables("PivotTable3")
    Set SLAAcumuladoPortal4 = SLAAcumPortal.PivotTables("PivotTable4")
    Set SLAAcumuladoPortal5 = SLAAcumPortal.PivotTables("PivotTable5")
    Set SLAAcumuladoPortal6 = SLAAcumPortal.PivotTables("PivotTable6")
    Set SLAAcumuladoPortal7 = SLAAcumPortal.PivotTables("PivotTable7")
    Set SLAAcumuladoPortal8 = SLAAcumPortal.PivotTables("PivotTable8")

    SLAAcumuladoPortal1.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal1.PivotFields("data_de_encerramento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal2.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal2.PivotFields("data_de_encerramento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal3.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal3.PivotFields("data_de_fechamento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal4.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal4.PivotFields("data_de_fechamento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal5.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal5.PivotFields("data_de_fechamento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal6.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal6.PivotFields("data_de_fechamento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal7.PivotFields("data_de_encerramento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal7.PivotFields("data_de_encerramento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

    SLAAcumuladoPortal8.PivotFields("data_de_fechamento").PivotItems(dDataRef).Visible = True
   
    For Each PvI In SLAAcumuladoPortal8.PivotFields("data_de_fechamento").PivotItems
       
        arrPvI = Split(PvI, "/")
       
        If PvI = "(blank)" Or PvI = "(vazio)" Then
            PvI.Visible = False
        ElseIf arrPvI(0) & arrPvI(2) <> arrDataRef(0) & arrDataRef(2) Then   'Testando se tem o mesmo mês e ano
            PvI.Visible = False
        ElseIf CInt(arrPvI(1)) > CInt(arrDataRef(1)) Then   'Testando o dia
            PvI.Visible = False
        Else
            PvI.Visible = True
        End If
   
    Next

'======= Atualizando filtro de pedidos não entregues do backlog de Chassi ================================
   
    Set BacklogChassi = Chassi.PivotTables("PivotTable3")
   
    BacklogChassi.PivotFields("NO_PEDIDO").ClearAllFilters    'Atenção se o Excel for em português!
    BacklogChassi.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
   
'======= Atualizando filtro de pedidos não entregues do backlog de Carroceria ================================
   
    Set BacklogCarroceria = Carroceria.PivotTables("PivotTable3")
   
    BacklogCarroceria.PivotFields("NO_PEDIDO").ClearAllFilters    'Atenção se o Excel for em português!
    BacklogCarroceria.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    'BacklogCarroceria.PivotFields("NO_PEDIDO").PivotItems("228032").Visible = False     'Pedido com problema Globus

'======= Atualizando filtro de pedidos não entregues do backlog de Diesel ================================

    Set BacklogDiesel = Diesel.PivotTables("PivotTable3")
   
    BacklogDiesel.PivotFields("NO_PEDIDO").ClearAllFilters    'Atenção se o Excel for em português!
    BacklogDiesel.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!

   
'======= Atualizando filtro de pedidos não entregues do backlog de Spot ================================
   
    Set BacklogSpot = Spot.PivotTables("PivotTable3")
   
    BacklogSpot.PivotFields("NO_PEDIDO").ClearAllFilters    'Atenção se o Excel for em português!
    BacklogSpot.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!

   
'======= Atualizando filtro de pedidos não entregues do backlog de VTR ================================
   
    Set BacklogVTR = VTR.PivotTables("PivotTable3")
   
    BacklogVTR.PivotFields("NO_PEDIDO").ClearAllFilters    'Atenção se o Excel for em português!
    BacklogVTR.PivotFields("NO_PEDIDO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    'BacklogVTR.PivotFields("NO_PEDIDO").PivotItems("228290").Visible = False     'Pedido com problema Globus



'======= Atualizando filtro de solicitacoes do backlog de Chassi ================================
    Set BacklogChassi = Nothing
    Set BacklogChassi = Chassi.PivotTables("PivotTable2")
   
    BacklogChassi.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
    On Error Resume Next
    BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("9234917").Visible = False    'Erro Globus (cot. aberta e fechada)
    On Error GoTo 0
   
    Set BacklogChassi = Nothing
    Set BacklogChassi = Chassi.PivotTables("PivotTable1")
   
    BacklogChassi.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
   
    On Error Resume Next
    BacklogChassi.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0
   
'======= Atualizando filtro de solicitacoes do backlog de Carroceria ================================
   
    Set BacklogCarroceria = Nothing
    Set BacklogCarroceria = Carroceria.PivotTables("PivotTable2")
   
    BacklogCarroceria.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
    On Error Resume Next
    BacklogCarroceria.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0
   
    Set BacklogCarroceria = Nothing
    Set BacklogCarroceria = Carroceria.PivotTables("PivotTable1")
   
    BacklogCarroceria.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
   
    On Error Resume Next
    BacklogCarroceria.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0

'======= Atualizando filtro de solicitacoes do backlog de Diesel ================================

    Set BacklogDiesel = Nothing
    Set BacklogDiesel = Diesel.PivotTables("PivotTable2")
   
    BacklogDiesel.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
    On Error Resume Next
    BacklogDiesel.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0
   
    Set BacklogDiesel = Nothing
    Set BacklogDiesel = Diesel.PivotTables("PivotTable1")
   
    BacklogDiesel.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!

    On Error Resume Next
    BacklogDiesel.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0

   
'======= Atualizando filtro de solicitacoes do backlog de Spot ================================
   
    Set BacklogSpot = Nothing
    Set BacklogSpot = Spot.PivotTables("PivotTable2")
   
    BacklogSpot.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
    On Error Resume Next
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9235864").Visible = False    'Erro Globus (cot. aberta e fechada)
    On Error GoTo 0
   
    Set BacklogSpot = Nothing
    Set BacklogSpot = Spot.PivotTables("PivotTable1")
   
    BacklogSpot.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
   
    On Error Resume Next
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237783").Visible = False    'Regularização!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237784").Visible = False    'Regularização!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237785").Visible = False    'Regularização!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237786").Visible = False    'Regularização!
    BacklogSpot.PivotFields("NO_SOLICITACAO").PivotItems("9237787").Visible = False    'Regularização!
    On Error GoTo 0

   
'======= Atualizando filtro de solicitacoes do backlog de VTR ================================
   
    Set BacklogVTR = Nothing
    Set BacklogVTR = VTR.PivotTables("PivotTable2")
   
    BacklogVTR.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!
    On Error Resume Next
    BacklogVTR.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0
   
    Set BacklogVTR = Nothing
    Set BacklogVTR = VTR.PivotTables("PivotTable1")
   
    BacklogVTR.PivotFields("NO_SOLICITACAO").ClearAllFilters    'Atenção se o Excel for em português!


    On Error Resume Next
    BacklogVTR.PivotFields("NO_SOLICITACAO").PivotItems("(blank)").Visible = False    'Atenção se o Excel for em português!
    On Error GoTo 0




    Set wbDaily = ActiveWorkbook
   
   
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
       
    Call AtualizaResumo.AtualizarResumo
   
    ResumoGlobusAcum.Range("DataRef") = dDataRef
       
    For Each ws In ThisWorkbook.Worksheets
        ws.Protect ("peg#2017")
    Next ws
   
    MsgBox "Atualização concluída!"
   
End Sub


dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 4:44 pm

Código: Selecionar todos
Sub AtualizarResumo()

Set SLAAcumuladoPortal1 = SLAAcumPortal.PivotTables("PivotTable1")
Set SLAAcumuladoPortal2 = SLAAcumPortal.PivotTables("PivotTable2")
Set SLAAcumuladoPortal3 = SLAAcumPortal.PivotTables("PivotTable3")
Set SLAAcumuladoPortal4 = SLAAcumPortal.PivotTables("PivotTable4")
Set SLAAcumuladoPortal5 = SLAAcumPortal.PivotTables("PivotTable5")
Set SLAAcumuladoPortal6 = SLAAcumPortal.PivotTables("PivotTable6")
Set SLAAcumuladoPortal7 = SLAAcumPortal.PivotTables("PivotTable7")
Set SLAAcumuladoPortal8 = SLAAcumPortal.PivotTables("PivotTable8")
Set SLADiarioPortal1 = SLADiaPortal.PivotTables("PivotTable1")
Set SLADiarioPortal2 = SLADiaPortal.PivotTables("PivotTable2")
Set SLADiarioPortal3 = SLADiaPortal.PivotTables("PivotTable3")
Set SLADiarioPortal4 = SLADiaPortal.PivotTables("PivotTable4")
Set SLADiarioPortal5 = SLADiaPortal.PivotTables("PivotTable5")
Set SLADiarioPortal6 = SLADiaPortal.PivotTables("PivotTable6")
Set SLADiarioPortal7 = SLADiaPortal.PivotTables("PivotTable7")
Set SLADiarioPortal8 = SLADiaPortal.PivotTables("PivotTable8")
Set BacklogCompras1 = Compras.PivotTables("PivotTable1")
Set BacklogCompras2 = Compras.PivotTables("PivotTable2")
Set BacklogCadastro1 = Cadastro.PivotTables("PivotTable1")
Set BacklogCadastro2 = Cadastro.PivotTables("PivotTable2")
Set BacklogCadastro3 = Cadastro.PivotTables("PivotTable3")
Set BacklogCadastro4 = Cadastro.PivotTables("PivotTable4")
Set BacklogDelegadas = Delegadas.PivotTables("PivotTable1")
Set BacklogObras = Obras.PivotTables("PivotTable1")
Set SLAAcumulado = SLAAcum.PivotTables("PivotTable1")
Set SLADiario = SLADia.PivotTables("PivotTable1")
Set BacklogChassi1 = Chassi.PivotTables("PivotTable1")
Set BacklogChassi2 = Chassi.PivotTables("PivotTable2")
Set BacklogChassi3 = Chassi.PivotTables("PivotTable3")
Set BacklogCarroceria1 = Carroceria.PivotTables("PivotTable1")
Set BacklogCarroceria2 = Carroceria.PivotTables("PivotTable2")
Set BacklogCarroceria3 = Carroceria.PivotTables("PivotTable3")
Set BacklogDiesel1 = Diesel.PivotTables("PivotTable1")
Set BacklogDiesel2 = Diesel.PivotTables("PivotTable2")
Set BacklogDiesel3 = Diesel.PivotTables("PivotTable3")
Set BacklogSpot1 = Spot.PivotTables("PivotTable1")
Set BacklogSpot2 = Spot.PivotTables("PivotTable2")
Set BacklogSpot3 = Spot.PivotTables("PivotTable3")
Set BacklogVTR1 = VTR.PivotTables("PivotTable1")
Set BacklogVTR2 = VTR.PivotTables("PivotTable2")
Set BacklogVTR3 = VTR.PivotTables("PivotTable3")
Set Backlogregularizacao1 = REGULARIZACAO.PivotTables("PivotTable1")
Set Backlogregularizacao2 = REGULARIZACAO.PivotTables("PivotTable2")

'=========================== Atualizando o Resumo Portal Acumulado =============================================

    ' Atualizando Status Itens

    Set rngAcumTar = ResumoPortalAcum.Range("ACUM_TAREFA")
    Set rngTarefaSit = SLAAcumPortal.Range("TAREFA_SIT")
    intLinInTar = rngAcumTar.Row + 1
    intColTar = rngAcumTar.Column
    intLinFinTar = rngAcumTar.End(xlDown).Row
    intContador = intLinInTar
    intContador2 = 1

    SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinTar

        On Error GoTo Proximo1
        ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 1).ClearContents
        ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 3).ClearContents
       
        ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 1).Value = rngTarefaSit.Offset(intContador2, 2).Value
        ResumoPortalAcum.Cells(intContador, rngAcumTar.Column + 3).Value = rngTarefaSit.Offset(intContador2, 1).Value
       
Proximo1:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngPortalAcumEmp = ResumoPortalAcum.Range("ACUM_EMPRESA_PORTAL")
    intLinInEmp = rngPortalAcumEmp.Row + 1
    intColEmp = rngPortalAcumEmp.Column
    intLinFinEmp = rngPortalAcumEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoPortalAcum.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In SLAAcumuladoPortal1.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In SLAAcumuladoPortal2.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In SLAAcumuladoPortal3.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 4

        For Each PvI In SLAAcumuladoPortal4.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 5

        For Each PvI In SLAAcumuladoPortal5.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 6

    For Each PvI In SLAAcumuladoPortal6.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 7

        For Each PvI In SLAAcumuladoPortal7.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 8

        For Each PvI In SLAAcumuladoPortal8.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       

        On Error GoTo Proximo2
        ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 1).ClearContents
        ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 3).ClearContents
     
        ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 1).Value = rngTarefaSit.Offset(5, 2).Value
        ResumoPortalAcum.Cells(intContador, rngPortalAcumEmp.Column + 3).Value = rngTarefaSit.Offset(5, 1).Value
       
Proximo2:
            intContador = intContador + 1
            On Error GoTo 0

    Loop

    SLAAcumuladoPortal1.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal2.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal3.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal4.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal5.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal6.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal7.PivotFields("empresa").ClearAllFilters
    SLAAcumuladoPortal8.PivotFields("empresa").ClearAllFilters

'=========================== Atualizando o Resumo Portal Diario =============================================

    ' Atualizando Categorias

    Set rngDiarioTar = ResumoPortalDiario.Range("DIARIO_TAREFA")
    Set rngTarefaSitDiario = SLADiaPortal.Range("TAREFA_SIT_DIARIO")
    intLinInTar = rngDiarioTar.Row + 1
    intColTar = rngDiarioTar.Column
    intLinFinTar = rngDiarioTar.End(xlDown).Row
    intContador = intLinInTar
    intContador2 = 1

    Do While intContador < intLinFinTar

        strCategoria = ResumoPortalDiario.Cells(intContador, intColTar).Value     'Pego o nome da categoria
        SLADiarioPortal1.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal2.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal3.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal4.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal5.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal6.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal7.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        SLADiarioPortal8.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
           
        On Error GoTo Proximo3
       
        ResumoPortalDiario.Cells(intContador, rngDiarioTar.Column + 1).ClearContents
        ResumoPortalDiario.Cells(intContador, rngDiarioTar.Column + 3).ClearContents
       
        ResumoPortalDiario.Cells(intContador, rngDiarioTar.Column + 1).Value = rngTarefaSitDiario.Offset(intContador2, 2).Value  'Pego o valor correspondente na tabela dinâmica
        ResumoPortalDiario.Cells(intContador, rngDiarioTar.Column + 3).Value = rngTarefaSitDiario.Offset(intContador2, 1).Value 'Pego o valor correspondente na tabela dinâmica

Proximo3:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngDiarioEmp = ResumoPortalDiario.Range("DIARIO_EMPRESA_PORTAL")
    intLinInEmp = rngDiarioEmp.Row + 1
    intColEmp = rngDiarioEmp.Column
    intLinFinEmp = rngDiarioEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoPortalDiario.Cells(intContador, intColEmp).Value     'Pego o nome da categoria
        SLADiarioPortal1.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal2.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal3.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal4.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal5.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal6.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal7.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal8.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas

        For Each PvI In SLADiarioPortal1.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal2.PivotFields("empresa").PivotItems
           If PvI <> strEmpresa Then
               PvI.Visible = False     'Tirar do filtro todas as outras empresas
           End If
        Next
       
        For Each PvI In SLADiarioPortal3.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
               PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal4.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
               PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal5.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal6.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal7.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        For Each PvI In SLADiarioPortal8.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next
       
        On Error GoTo Proximo4
        ResumoPortalDiario.Cells(intContador, rngDiarioEmp.Column + 1).ClearContents
        ResumoPortalDiario.Cells(intContador, rngDiarioEmp.Column + 3).ClearContents
       
        ResumoPortalDiario.Cells(intContador, rngDiarioEmp.Column + 1).Value = rngTarefaSitDiario.Offset(5, 2).Value  'Pego o valor correspondente na tabela dinâmica
        ResumoPortalDiario.Cells(intContador, rngDiarioEmp.Column + 3).Value = rngTarefaSitDiario.Offset(5, 1).Value  'Pego o valor correspondente na tabela dinâmica

Proximo4:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

        SLADiarioPortal1.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal2.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal3.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal4.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal5.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal6.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal7.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas
        SLADiarioPortal8.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas



'=========================== Atualizando o Resumo Portal Delegadas =============================================

    ' Atualizando Status Itens

    Set rngDelegadasStatus = ResumoPortalDelegadas.Range("DELEGADAS_STATUS")
    Set rngDelegadasSit = Delegadas.Range("DELEGADAS_SIT")
    intLinInStatus = rngDelegadasStatus.Row + 1
    intColStatus = rngDelegadasStatus.Column
    intLinFinStatus = rngDelegadasStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogDelegadas.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado


    Do While intContador < intLinFinStatus

        On Error GoTo Proximo9
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 1).ClearContents
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 2).ClearContents
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 4).ClearContents
       
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 1).Value = rngDelegadasSit.Offset(intContador2, 1).Value
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 2).Value = rngDelegadasSit.Offset(intContador2, 3).Value
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasStatus.Column + 4).Value = rngDelegadasSit.Offset(intContador2, 2).Value

Proximo9:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngDelegadasEmp = ResumoPortalDelegadas.Range("DELEGADAS_EMPRESA")
    intLinInEmp = rngDelegadasEmp.Row + 1
    intColEmp = rngDelegadasEmp.Column
    intLinFinEmp = rngDelegadasEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoPortalDelegadas.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogDelegadas.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogDelegadas.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        On Error GoTo Proximo10
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 1).ClearContents
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 2).ClearContents
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 4).ClearContents
       
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 1).Value = rngDelegadasSit.Offset(1, 1).Value
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 2).Value = rngDelegadasSit.Offset(1, 3).Value
        ResumoPortalDelegadas.Cells(intContador, rngDelegadasEmp.Column + 4).Value = rngDelegadasSit.Offset(1, 2).Value
       
Proximo10:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogDelegadas.PivotFields("empresa").ClearAllFilters

'=========================== Atualizando o Resumo Portal Obras =============================================

    ' Atualizando Status Itens

    Set rngObrasStatus = ResumoPortalObras.Range("OBRAS_STATUS")
    Set rngObrasSit = Obras.Range("OBRAS_SIT")
    intLinInStatus = rngObrasStatus.Row + 1
    intColStatus = rngObrasStatus.Column
    intLinFinStatus = rngObrasStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogObras.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus

        On Error GoTo Proximo11
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 1).ClearContents
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 2).ClearContents
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 4).ClearContents
       
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 1).Value = rngObrasSit.Offset(intContador2, 1).Value
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 2).Value = rngObrasSit.Offset(intContador2, 3).Value
        ResumoPortalObras.Cells(intContador, rngObrasStatus.Column + 4).Value = rngObrasSit.Offset(intContador2, 2).Value

Proximo11:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngObrasEmp = ResumoPortalObras.Range("OBRAS_EMPRESA")
    intLinInEmp = rngObrasEmp.Row + 1
    intColEmp = rngObrasEmp.Column
    intLinFinEmp = rngObrasEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoPortalObras.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogObras.PivotFields("empresa").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogObras.PivotFields("empresa").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        On Error GoTo Proximo12
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 1).ClearContents
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 2).ClearContents
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 4).ClearContents
       
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 1).Value = rngObrasSit.Offset(1, 1).Value
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 2).Value = rngObrasSit.Offset(1, 3).Value
        ResumoPortalObras.Cells(intContador, rngObrasEmp.Column + 4).Value = rngObrasSit.Offset(1, 2).Value
       
Proximo12:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogObras.PivotFields("empresa").ClearAllFilters


'=========================== Atualizando o Resumo Globus Acumulado =============================================

    ' Atualizando Categorias

    Set rngAcumCat = ResumoGlobusAcum.Range("ACUM_CATEGORIA")
    intLinInCat = rngAcumCat.Row + 1
    intColCat = rngAcumCat.Column
    intLinFinCat = rngAcumCat.End(xlDown).Row
    intContador = intLinInCat

    Do While intContador < intLinFinCat

        strCategoria = ResumoGlobusAcum.Cells(intContador, intColCat).Value     'Pego o nome da categoria
        SLAAcumulado.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        On Error GoTo Proximo13
        ResumoGlobusAcum.Cells(intContador, rngAcumCat.Column + 1).ClearContents
        ResumoGlobusAcum.Cells(intContador, rngAcumCat.Column + 3).ClearContents
       
        ResumoGlobusAcum.Cells(intContador, rngAcumCat.Column + 1).Value = SLAAcumulado.GetPivotData("Total Recebido", "CATEGORIA", strCategoria)    'Pego o valor correspondente na tabela dinâmica
        ResumoGlobusAcum.Cells(intContador, rngAcumCat.Column + 3).Value = SLAAcumulado.GetPivotData("% Atendimento SLA", "CATEGORIA", strCategoria)    'Pego o valor correspondente na tabela dinâmica

Proximo13:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngAcumEmp = ResumoGlobusAcum.Range("ACUM_EMPRESA")
    intLinInEmp = rngAcumEmp.Row + 1
    intColEmp = rngAcumEmp.Column
    intLinFinEmp = rngAcumEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusAcum.Cells(intContador, intColEmp).Value     'Pego o nome da categoria
        SLAAcumulado.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas

        For Each PvI In SLAAcumulado.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo14
        ResumoGlobusAcum.Cells(intContador, rngAcumEmp.Column + 1).ClearContents
        ResumoGlobusAcum.Cells(intContador, rngAcumEmp.Column + 3).ClearContents
       
        ResumoGlobusAcum.Cells(intContador, rngAcumEmp.Column + 1).Value = SLAAcumulado.GetPivotData("Total Recebido")    'Pego o valor correspondente na tabela dinâmica
        ResumoGlobusAcum.Cells(intContador, rngAcumEmp.Column + 3).Value = SLAAcumulado.GetPivotData("% Atendimento SLA")    'Pego o valor correspondente na tabela dinâmica

Proximo14:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    SLAAcumulado.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Diario =============================================

    ' Atualizando Categorias

    Set rngDiarioCat = ResumoGlobusDiario.Range("DIARIO_CATEGORIA")
    intLinInCat = rngDiarioCat.Row + 1
    intColCat = rngDiarioCat.Column
    intLinFinCat = rngDiarioCat.End(xlDown).Row
    intContador = intLinInCat

    Do While intContador < intLinFinCat

        strCategoria = ResumoGlobusDiario.Cells(intContador, intColCat).Value     'Pego o nome da categoria
        SLADiario.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
        On Error GoTo Proximo15
        ResumoGlobusDiario.Cells(intContador, rngDiarioCat.Column + 1).ClearContents
        ResumoGlobusDiario.Cells(intContador, rngDiarioCat.Column + 3).ClearContents
       
        ResumoGlobusDiario.Cells(intContador, rngDiarioCat.Column + 1).Value = SLADiario.GetPivotData("Total Recebido", "CATEGORIA", strCategoria)    'Pego o valor correspondente na tabela dinâmica
        ResumoGlobusDiario.Cells(intContador, rngDiarioCat.Column + 3).Value = SLADiario.GetPivotData("% Atendimento SLA", "CATEGORIA", strCategoria)    'Pego o valor correspondente na tabela dinâmica

Proximo15:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngDiarioEmp = ResumoGlobusDiario.Range("DIARIO_EMPRESA")
    intLinInEmp = rngDiarioEmp.Row + 1
    intColEmp = rngDiarioEmp.Column
    intLinFinEmp = rngDiarioEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusDiario.Cells(intContador, intColEmp).Value     'Pego o nome da categoria
        SLADiario.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas

        For Each PvI In SLADiario.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo16
        ResumoGlobusDiario.Cells(intContador, rngDiarioEmp.Column + 1).ClearContents
        ResumoGlobusDiario.Cells(intContador, rngDiarioEmp.Column + 3).ClearContents
       
        ResumoGlobusDiario.Cells(intContador, rngDiarioEmp.Column + 1).Value = SLADiario.GetPivotData("Total Recebido")    'Pego o valor correspondente na tabela dinâmica
        ResumoGlobusDiario.Cells(intContador, rngDiarioEmp.Column + 3).Value = SLADiario.GetPivotData("% Atendimento SLA")    'Pego o valor correspondente na tabela dinâmica

Proximo16:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    SLADiario.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Carroceria =============================================

    ' Atualizando Status Itens

    Set rngCarroceriaStatus = ResumoGlobusCarroceria.Range("CARROCERIA_STATUS")
    Set rngCarroceriaSit = Carroceria.Range("CARROCERIA_SIT")
    intLinInStatus = rngCarroceriaStatus.Row + 1
    intColStatus = rngCarroceriaStatus.Column
    intLinFinStatus = rngCarroceriaStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogCarroceria1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogCarroceria2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogCarroceria3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus

        On Error GoTo Proximo17
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 1).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 2).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 4).ClearContents
       
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 1).Value = rngCarroceriaSit.Offset(intContador2, 1).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 2).Value = rngCarroceriaSit.Offset(intContador2, 3).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaStatus.Column + 4).Value = rngCarroceriaSit.Offset(intContador2, 2).Value

Proximo17:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngCarroceriaEmp = ResumoGlobusCarroceria.Range("CARROCERIA_EMPRESA")
    intLinInEmp = rngCarroceriaEmp.Row + 1
    intColEmp = rngCarroceriaEmp.Column
    intLinFinEmp = rngCarroceriaEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusCarroceria.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogCarroceria1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogCarroceria1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogCarroceria2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In BacklogCarroceria2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogCarroceria3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In BacklogCarroceria3.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo18
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 1).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 2).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 4).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 6).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 7).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 9).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 11).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 12).ClearContents
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 14).ClearContents

        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 1).Value = rngCarroceriaSit.Offset(1, 1).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 2).Value = rngCarroceriaSit.Offset(1, 3).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 4).Value = rngCarroceriaSit.Offset(1, 2).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 6).Value = rngCarroceriaSit.Offset(2, 1).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 7).Value = rngCarroceriaSit.Offset(2, 3).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 9).Value = rngCarroceriaSit.Offset(2, 2).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 11).Value = rngCarroceriaSit.Offset(3, 1).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 12).Value = rngCarroceriaSit.Offset(3, 3).Value
        ResumoGlobusCarroceria.Cells(intContador, rngCarroceriaEmp.Column + 14).Value = rngCarroceriaSit.Offset(3, 2).Value
       
Proximo18:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogCarroceria1.PivotFields("EMPRESA").ClearAllFilters
    BacklogCarroceria2.PivotFields("EMPRESA").ClearAllFilters
    BacklogCarroceria3.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Chassi =============================================

    ' Atualizando Status Itens

    Set rngChassiStatus = ResumoGlobusChassi.Range("CHASSI_STATUS")
    Set rngChassiSit = Chassi.Range("CHASSI_SIT")
    intLinInStatus = rngChassiStatus.Row + 1
    intColStatus = rngChassiStatus.Column
    intLinFinStatus = rngChassiStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogChassi1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogChassi2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogChassi3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus

        On Error GoTo Proximo19
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 1).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 2).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 4).ClearContents
       
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 1).Value = rngChassiSit.Offset(intContador2, 1).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 2).Value = rngChassiSit.Offset(intContador2, 3).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiStatus.Column + 4).Value = rngChassiSit.Offset(intContador2, 2).Value

Proximo19:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngChassiEmp = ResumoGlobusChassi.Range("CHASSI_EMPRESA")
    intLinInEmp = rngChassiEmp.Row + 1
    intColEmp = rngChassiEmp.Column
    intLinFinEmp = rngChassiEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusChassi.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogChassi1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogChassi1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogChassi2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In BacklogChassi2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogChassi3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In BacklogChassi3.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo20
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 1).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 2).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 4).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 6).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 7).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 9).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 11).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 12).ClearContents
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 14).ClearContents

        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 1).Value = rngChassiSit.Offset(1, 1).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 2).Value = rngChassiSit.Offset(1, 3).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 4).Value = rngChassiSit.Offset(1, 2).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 6).Value = rngChassiSit.Offset(2, 1).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 7).Value = rngChassiSit.Offset(2, 3).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 9).Value = rngChassiSit.Offset(2, 2).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 11).Value = rngChassiSit.Offset(3, 1).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 12).Value = rngChassiSit.Offset(3, 3).Value
        ResumoGlobusChassi.Cells(intContador, rngChassiEmp.Column + 14).Value = rngChassiSit.Offset(3, 2).Value

Proximo20:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogChassi1.PivotFields("EMPRESA").ClearAllFilters
    BacklogChassi2.PivotFields("EMPRESA").ClearAllFilters
    BacklogChassi3.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Diesel =============================================

    ' Atualizando Status Itens

    Set rngDieselStatus = ResumoGlobusDiesel.Range("DIESEL_STATUS")
    Set rngDieselSit = Diesel.Range("DIESEL_SIT")
    intLinInStatus = rngDieselStatus.Row + 1
    intColStatus = rngDieselStatus.Column
    intLinFinStatus = rngDieselStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogDiesel1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogDiesel2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogDiesel3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus

        On Error GoTo Proximo21
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 1).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 2).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 4).ClearContents
       
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 1).Value = rngDieselSit.Offset(intContador2, 1).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 2).Value = rngDieselSit.Offset(intContador2, 3).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselStatus.Column + 4).Value = rngDieselSit.Offset(intContador2, 2).Value

Proximo21:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngDieselEmp = ResumoGlobusDiesel.Range("DIESEL_EMPRESA")
    intLinInEmp = rngDieselEmp.Row + 1
    intColEmp = rngDieselEmp.Column
    intLinFinEmp = rngDieselEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusDiesel.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogDiesel1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogDiesel1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogDiesel2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In BacklogDiesel2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogDiesel3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In BacklogDiesel3.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo22
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 1).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 2).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 4).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 6).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 7).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 9).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 11).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 12).ClearContents
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 14).ClearContents

        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 1).Value = rngDieselSit.Offset(1, 1).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 2).Value = rngDieselSit.Offset(1, 3).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 4).Value = rngDieselSit.Offset(1, 2).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 6).Value = rngDieselSit.Offset(2, 1).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 7).Value = rngDieselSit.Offset(2, 3).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 9).Value = rngDieselSit.Offset(2, 2).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 11).Value = rngDieselSit.Offset(3, 1).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 12).Value = rngDieselSit.Offset(3, 3).Value
        ResumoGlobusDiesel.Cells(intContador, rngDieselEmp.Column + 14).Value = rngDieselSit.Offset(3, 2).Value

Proximo22:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogDiesel1.PivotFields("EMPRESA").ClearAllFilters
    BacklogDiesel2.PivotFields("EMPRESA").ClearAllFilters
    BacklogDiesel3.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Spot =============================================

    ' Atualizando Status Itens

    Set rngSpotStatus = ResumoGlobusSpot.Range("SPOT_STATUS")
    Set rngSpotSit = Spot.Range("SPOT_SIT")
    intLinInStatus = rngSpotStatus.Row + 1
    intColStatus = rngSpotStatus.Column
    intLinFinStatus = rngSpotStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogSpot1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogSpot2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogSpot3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus


        On Error GoTo Proximo23
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 1).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 2).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 4).ClearContents
       
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 1).Value = rngSpotSit.Offset(intContador2, 1).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 2).Value = rngSpotSit.Offset(intContador2, 3).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotStatus.Column + 4).Value = rngSpotSit.Offset(intContador2, 2).Value

Proximo23:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngSpotEmp = ResumoGlobusSpot.Range("SPOT_EMPRESA")
    intLinInEmp = rngSpotEmp.Row + 1
    intColEmp = rngSpotEmp.Column
    intLinFinEmp = rngSpotEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusSpot.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogSpot1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogSpot1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogSpot2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In BacklogSpot2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogSpot3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In BacklogSpot3.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo24
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 1).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 2).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 4).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 6).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 7).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 9).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 11).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 12).ClearContents
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 14).ClearContents

        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 1).Value = rngSpotSit.Offset(1, 1).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 2).Value = rngSpotSit.Offset(1, 3).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 4).Value = rngSpotSit.Offset(1, 2).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 6).Value = rngSpotSit.Offset(2, 1).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 7).Value = rngSpotSit.Offset(2, 3).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 9).Value = rngSpotSit.Offset(2, 2).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 11).Value = rngSpotSit.Offset(3, 1).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 12).Value = rngSpotSit.Offset(3, 3).Value
        ResumoGlobusSpot.Cells(intContador, rngSpotEmp.Column + 14).Value = rngSpotSit.Offset(3, 2).Value

Proximo24:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogSpot1.PivotFields("EMPRESA").ClearAllFilters
    BacklogSpot2.PivotFields("EMPRESA").ClearAllFilters
    BacklogSpot3.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus VTR =============================================

    ' Atualizando Status Itens

    Set rngVTRStatus = ResumoGlobusVTR.Range("VTR_STATUS")
    Set rngVTRSit = VTR.Range("VTR_SIT")
    intLinInStatus = rngVTRStatus.Row + 1
    intColStatus = rngVTRStatus.Column
    intLinFinStatus = rngVTRStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    BacklogVTR1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogVTR2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    BacklogVTR3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus


        On Error GoTo Proximo25
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 1).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 2).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 4).ClearContents
       
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 1).Value = rngVTRSit.Offset(intContador2, 1).Value
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 2).Value = rngVTRSit.Offset(intContador2, 3).Value
        ResumoGlobusVTR.Cells(intContador, rngVTRStatus.Column + 4).Value = rngVTRSit.Offset(intContador2, 2).Value

Proximo25:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngVTREmp = ResumoGlobusVTR.Range("VTR_EMPRESA")
    intLinInEmp = rngVTREmp.Row + 1
    intColEmp = rngVTREmp.Column
    intLinFinEmp = rngVTREmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusVTR.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        BacklogVTR1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In BacklogVTR1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogVTR2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In BacklogVTR2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        BacklogVTR3.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 3

        For Each PvI In BacklogVTR3.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next

        On Error GoTo Proximo26
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 1).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 2).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 4).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 6).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 7).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 9).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 11).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 12).ClearContents
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 14).ClearContents

        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 1).Value = rngVTRSit.Offset(1, 1).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 2).Value = rngVTRSit.Offset(1, 3).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 4).Value = rngVTRSit.Offset(1, 2).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 6).Value = rngVTRSit.Offset(2, 1).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 7).Value = rngVTRSit.Offset(2, 3).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 9).Value = rngVTRSit.Offset(2, 2).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 11).Value = rngVTRSit.Offset(3, 1).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 12).Value = rngVTRSit.Offset(3, 3).Value
        ResumoGlobusVTR.Cells(intContador, rngVTREmp.Column + 14).Value = rngVTRSit.Offset(3, 2).Value

Proximo26:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    BacklogVTR1.PivotFields("EMPRESA").ClearAllFilters
    BacklogVTR2.PivotFields("EMPRESA").ClearAllFilters
    BacklogVTR3.PivotFields("EMPRESA").ClearAllFilters

'=========================== Atualizando o Resumo Globus Regularizacao =============================================

    ' Atualizando Status Itens

    Set rngregularizacaoStatus = ResumoGlobusReg.Range("REGULARIZACAO_STATUS")
    Set rngregularizacaoSit = REGULARIZACAO.Range("REGULARIZACAO_SIT")
    intLinInStatus = rngregularizacaoStatus.Row + 1
    intColStatus = rngregularizacaoStatus.Column
    intLinFinStatus = rngregularizacaoStatus.End(xlDown).Row
    intContador = intLinInStatus
    intContador2 = 1

    Backlogregularizacao1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado
    Backlogregularizacao2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas, para pegar o consolidado

    Do While intContador < intLinFinStatus


        On Error GoTo Proximo27
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 1).ClearContents
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 2).ClearContents
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 4).ClearContents
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 1).Value = rngregularizacaoSit.Offset(intContador2, 1).Value
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 2).Value = rngregularizacaoSit.Offset(intContador2, 3).Value
        ResumoGlobusReg.Cells(intContador, rngregularizacaoStatus.Column + 4).Value = rngregularizacaoSit.Offset(intContador2, 2).Value

Proximo27:
        intContador = intContador + 1
        intContador2 = intContador2 + 1
        On Error GoTo 0

    Loop

    ' Atualizando Empresas

    Set rngregularizacaoEmp = ResumoGlobusReg.Range("REGULARIZACAO_EMPRESA")
    intLinInEmp = rngregularizacaoEmp.Row + 1
    intColEmp = rngregularizacaoEmp.Column
    intLinFinEmp = rngregularizacaoEmp.End(xlDown).Row
    intContador = intLinInEmp

    Do While intContador < intLinFinEmp

        strEmpresa = ResumoGlobusReg.Cells(intContador, intColEmp).Value     'Pego o nome da categoria

        Backlogregularizacao1.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 1

        For Each PvI In Backlogregularizacao1.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next


        Backlogregularizacao2.PivotFields("EMPRESA").ClearAllFilters     'Limpo filtro de empresas da tabela dinamica 2

        For Each PvI In Backlogregularizacao2.PivotFields("EMPRESA").PivotItems
            If PvI <> strEmpresa Then
                PvI.Visible = False     'Tirar do filtro todas as outras empresas
            End If
        Next



        On Error GoTo Proximo28
        ResumoGlobusReg.Cells(intContador, rngregularizacaoEmp.Column + 1).ClearContents
        ResumoGlobusReg.Cells(intContador, rngregularizacaoEmp.Column + 2).ClearContents
        ResumoGlobusReg.Cells(intContador, rngregularizacaoEmp.Column + 1).Value = rngregularizacaoSit.Offset(1, 1).Value
        ResumoGlobusReg.Cells(intContador, rngregularizacaoEmp.Column + 2).Value = rngregularizacaoSit.Offset(2, 1).Value

Proximo28:
        intContador = intContador + 1
        On Error GoTo 0

    Loop

    Backlogregularizacao1.PivotFields("EMPRESA").ClearAllFilters
    Backlogregularizacao2.PivotFields("EMPRESA").ClearAllFilters

'==================================================================================================================

    Sheets(1).Activate


End Sub


Function a()
   Application.DisplayAlerts = True
   Application.ScreenUpdating = True
       
End Function


dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor dasaiev » Qui Jan 11, 2018 4:49 pm

Código: Selecionar todos
'Option Explicit


Sub GerarRelatorio()

    Dim blRegularizacao As Boolean
    Dim shCategoria As Worksheet
    Dim rngLastCell As Range
    Dim wbInd As Workbook
    Dim shOrigem As Worksheet
    Dim ws As Worksheet

    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
   
    Set wbInd = ThisWorkbook
   
    Set shOrigem = wbInd.Sheets(ActiveSheet.Name)
   
    For Each ws In ThisWorkbook.Worksheets
        ws.Unprotect ("peg#2017")
    Next ws
   
    shOrigem.Activate
   
    Select Case shOrigem.CodeName
   

'===== Gerar relatório para Diário Portal ============
    Case "ResumoPortalDiario"
   
        Set shCategoria = Portal
       
        With shCategoria.PivotTables("Tabela dinâmica5").TableRange1
            Set rngLastCell = .Cells(.Rows.Count, .Columns.Count)
        End With
       
        rngLastCell.ShowDetail = True

        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
        shconsolidada.Cells.EntireColumn.AutoFit
        shOrigem.Activate
        shconsolidada.Move
        For Each ws In ThisWorkbook.Worksheets
            ws.Protect ("peg#2017")
        Next ws
        Application.DisplayAlerts = True
        Application.ScreenUpdating = True
        Exit Sub
       

''===== Gerar relatório para Acumulado Globus ============
'    Case "ResumoGlobusAcum"
'
'        Set shCategoria = SLAAcum
'        intColunaPT = shCategoria.PivotTables("PivotTable2").DataBodyRange.Column
'        shCategoria.Cells(500000, intColunaPT).End(xlUp).ShowDetail = True
'        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
'        shOrigem.Activate
'        shconsolidada.Move
'        For Each ws In ThisWorkbook.Worksheets
'            ws.Protect ("peg#2017")
'        Next ws
'        Application.DisplayAlerts = True
'        Application.ScreenUpdating = True
'        Exit Sub
'
'
''========================================================
'
'
''===== Gerar relatório para Diário Globus ===============
'    Case "ResumoGlobusDiario"
'
'        Set shCategoria = SLADia
'        intColunaPT = shCategoria.PivotTables("PivotTable1").DataBodyRange.Column
'        shCategoria.Cells(500000, intColunaPT).End(xlUp).ShowDetail = True
'        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
'        shOrigem.Activate
'        shconsolidada.Move
'        Application.DisplayAlerts = True
'        For Each ws In ThisWorkbook.Worksheets
'            ws.Protect ("peg#2017")
'        Next ws
'        Application.ScreenUpdating = True
'        Exit Sub
'
''========================================================
'===== Gerar relatório para Mensal de entrega Globus ===============
    Case "ResumoGlobusAcum"
   
        Set shCategoria = SLAAcum
        intColunaPT = shCategoria.PivotTables("PivotTable2").DataBodyRange.Column
        shCategoria.Cells(500000, 3).End(xlUp).ShowDetail = True
        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
        shOrigem.Activate
       
       
        ' Trocando a ordem da colunas do relatório...
       
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Cut
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO_GERADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Insert Shift:=xlToRight

       
        ' Excluindo campos desnecessários do relatório...

        On Error Resume Next
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_HOJE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_SOLICITADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        'Set rngCampo = shconsolidada.Range("1:1").Find("DATA_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        'shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_GRUPO_COMPRAS")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("GRUPO_COMPRAS")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("QTD_SOLICITADA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("SOLICITANTE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_APROVACAO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_COTADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
       ' Set rngCampo = shconsolidada.Range("1:1").Find("DATA_EMISSAO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        ' shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        'Set rngCampo = shconsolidada.Range("1:1").Find("QTD_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        'shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        'Set rngCampo = shconsolidada.Range("1:1").Find("VALOR_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        'shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        'Set rngCampo = shconsolidada.Range("1:1").Find("VALOR_TOTAL_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        'shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("COMPRADOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("APROVADOR_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("NUMERO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("TELEFONE_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("EMAIL_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_PREVISTA_ENTREGA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DIFERENCA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO_GERADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_LOCAL")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_APROVACAO_SOLICITACAO_AUX")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("APROVADOR_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("VENCEDOR_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("EXCLUIDACOTACAOITSOLIC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("COTACAO_EMITIDA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_EMISSAO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_PAGAMENTO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_RECEBIMENTO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_APROVACAO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_HOJE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("SLA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CATEGORIA_DAILY")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("ENDERECO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("BAIRRO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CIDADE_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CEP_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGOGRC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        shconsolidada.Move
        Application.DisplayAlerts = True
        For Each ws In ThisWorkbook.Worksheets
            ws.Protect ("peg#2017")
        Next ws
        Application.ScreenUpdating = True
       
   
       
        Exit Sub

'========================================================

'===== Gerar relatório para Diário de entrega Globus ===============
    Case "ResumoGlobusDiario"
   
        Set shCategoria = SLADia
        intColunaPT = shCategoria.PivotTables("PivotTable1").DataBodyRange.Column
        shCategoria.Cells(500000, 3).End(xlUp).ShowDetail = True
        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
        shOrigem.Activate
       
       
        ' Trocando a ordem da colunas do relatório...
       
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Cut
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO_GERADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Insert Shift:=xlToRight

       
        ' Excluindo campos desnecessários do relatório...

        On Error Resume Next
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_HOJE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_SOLICITADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_GRUPO_COMPRAS")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("GRUPO_COMPRAS")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("QTD_SOLICITADA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("SOLICITANTE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_APROVACAO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_COTADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_EMISSAO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("QTD_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("VALOR_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("VALOR_TOTAL_ITEM_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("COMPRADOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("APROVADOR_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("NUMERO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("TELEFONE_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("EMAIL_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_PREVISTA_ENTREGA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("DIFERENCA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
               
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO_GERADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_LOCAL")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_APROVACAO_SOLICITACAO_AUX")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("APROVADOR_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("VENCEDOR_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("EXCLUIDACOTACAOITSOLIC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("COTACAO_EMITIDA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_EMISSAO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_PAGAMENTO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_RECEBIMENTO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_APROVACAO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_HOJE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("SLA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CATEGORIA_DAILY")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("ENDERECO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("BAIRRO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CIDADE_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CEP_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("CODIGOGRC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
       
        shconsolidada.Move
        Application.DisplayAlerts = True
        For Each ws In ThisWorkbook.Worksheets
            ws.Protect ("peg#2017")
        Next ws
        Application.ScreenUpdating = True
       
   
       
        Exit Sub

'========================================================

'===== Gerar relatório para Carroceria===================
    Case "ResumoGlobusCarroceria"
   
        Set shCategoria = Carroceria
   

'========================================================


'============= Gerar relatório para Chassi ==============
    Case "ResumoGlobusChassi"
   
        Set shCategoria = Chassi

'========================================================
   

'============= Gerar relatório para Diesel ==============
    Case "ResumoGlobusDiesel"
   
        Set shCategoria = Diesel
   
   

'========================================================


'============= Gerar relatório para Spot ==============
    Case "ResumoGlobusSpot"
   
        Set shCategoria = Spot

'========================================================


'============= Gerar relatório para VTR =================
    Case "ResumoGlobusVTR"
   
        Set shCategoria = VTR

'========================================================


'============= Gerar relatório para Regularização =======
    Case "ResumoGlobusReg"
   
        Set shCategoria = REGULARIZACAO

'========================================================
    End Select
   
    bl1 = False
    bl2 = False
   
' Testa se o select case encontrou alguma correspondência
    If shCategoria Is Nothing Then
   
        For Each ws In ThisWorkbook.Worksheets
            ws.Protect ("peg#2017")
        Next ws
        Application.DisplayAlerts = True
        Application.ScreenUpdating = True
        Exit Sub
       
    End If
   
bl1 = False
bl2 = False
intColunaPT1 = 1000
intColunaPT2 = 1000
intColunaPT3 = 1000

On Error Resume Next
intColunaPT1 = shCategoria.PivotTables("PivotTable2").DataBodyRange.Column
intColunaPT2 = shCategoria.PivotTables("PivotTable3").DataBodyRange.Column
intColunaPT3 = shCategoria.PivotTables("PivotTable4").DataBodyRange.Column

    If IsNumeric(shCategoria.Cells(500000, intColunaPT1).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT1).End(xlUp).Value <> 0 Then
        shCategoria.Cells(500000, intColunaPT1).End(xlUp).ShowDetail = True
        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
       
        If IsNumeric(shCategoria.Cells(500000, intColunaPT2).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT2).End(xlUp).Value <> 0 Then
            shCategoria.Cells(500000, intColunaPT2).End(xlUp).ShowDetail = True
            Set shexpandida1 = wbInd.Sheets(ActiveSheet.Name)
            bl1 = True
       
            If IsNumeric(shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value <> 0 Then
                shCategoria.Cells(500000, intColunaPT3).End(xlUp).ShowDetail = True
                Set shexpandida2 = wbInd.Sheets(ActiveSheet.Name)
                bl2 = True
            End If
       
        ElseIf IsNumeric(shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value <> 0 Then
            shCategoria.Cells(500000, intColunaPT3).End(xlUp).ShowDetail = True
            Set shexpandida2 = wbInd.Sheets(ActiveSheet.Name)
            bl2 = True
        End If
                 
    ElseIf IsNumeric(shCategoria.Cells(500000, intColunaPT2).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT2).End(xlUp).Value <> 0 Then
        shCategoria.Cells(500000, intColunaPT2).End(xlUp).ShowDetail = True
        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
       
        If IsNumeric(shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value <> 0 Then
            shCategoria.Cells(500000, intColunaPT3).End(xlUp).ShowDetail = True
            Set shexpandida2 = wbInd.Sheets(ActiveSheet.Name)
            bl2 = True
        End If
       
       
    ElseIf IsNumeric(shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value) And shCategoria.Cells(500000, intColunaPT3).End(xlUp).Value <> 0 Then
        shCategoria.Cells(500000, intColunaPT3).End(xlUp).ShowDetail = True
        Set shconsolidada = wbInd.Sheets(ActiveSheet.Name)
   
    End If
       
        If bl1 = True Then
            If shexpandida1.Cells(1, 2) <> "" Then
                shexpandida1.Activate
                shexpandida1.Range(Cells(2, 1), Cells(Cells(1, 1).End(xlDown).Row, Cells(1, 1).End(xlToRight).Column)).Copy
                shconsolidada.Activate
                shconsolidada.Cells(1, 1).End(xlDown).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
            End If
            shexpandida1.Delete
        End If
       
       
    If bl2 = True Then
        If shexpandida2.Cells(1, 2) <> "" Then
            shexpandida2.Activate
            shexpandida2.Range(Cells(2, 1), Cells(Cells(1, 1).End(xlDown).Row, Cells(1, 1).End(xlToRight).Column)).Copy
            shconsolidada.Activate
            shconsolidada.Cells(1, 1).End(xlDown).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
        End If
        shexpandida2.Delete
    End If
   
   
label:

    shconsolidada.ListObjects(1).Unlist
   
' Trocando a ordem da colunas do relatório...
       
        Set rngCampo = shconsolidada.Range("1:1").Find("NO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Cut
        Set rngCampo = shconsolidada.Range("1:1").Find("DATA_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
        shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Insert Shift:=xlToRight
   
' Excluindo campos desnecessários do relatório...

    On Error Resume Next
   
    Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO_GERADO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_LOCAL")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CODIGO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DATA_APROVACAO_SOLICITACAO_AUX")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("APROVADOR_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("VENCEDOR_COTACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("EXCLUIDACOTACAOITSOLIC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("NO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("COTACAO_EMITIDA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DATA_EMISSAO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DATA_PAGAMENTO_NF")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_RECEBIMENTO_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_APROVACAO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_HOJE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("SLA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DIA_UTIL_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CATEGORIA_DAILY")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("DATA_LIMITE")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("ATENDIMENTO_SLA")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("STATUS_PEDIDO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("ENDERECO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("BAIRRO_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CIDADE_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CEP_FORNECEDOR")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("CODIGOGRC")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    Set rngCampo = shconsolidada.Range("1:1").Find("TIPO_SOLICITACAO")    'ATENÇÃO SE MUDAR O NOME DOS CAMPOS!
    shconsolidada.Cells(1, rngCampo.Column).EntireColumn.Delete
   
    On Error GoTo 0
   
    intlinhas = shconsolidada.Cells(1, 1).End(xlToRight).End(xlDown).Row
   
    shconsolidada.Range("A1:AJ" & intlinhas).RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, _
        6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33 _
        , 34, 35, 36), Header:=xlYes
   
    intlinhas = shconsolidada.Cells(1, 1).End(xlToRight).End(xlDown).Row
    shconsolidada.Columns("A:A").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightOrBelow
    shconsolidada.Range("A1").Value = "Farol"
   
   
    For intContador = 2 To intlinhas
   
        shconsolidada.Cells(intContador, 1).Value = shconsolidada.Cells(intContador, shconsolidada.Cells(1, 1).End(xlToRight).Column).Value
   
    Next intContador

'Copiando formatação condicional do farol
    shCategoria.Range("W1").Copy
    shconsolidada.Range(Cells(2, 1), Cells(1, 1).End(xlDown)).PasteSpecial Paste:=xlPasteFormats
   
   
    shconsolidada.Range(Cells(1, 1), Cells(1, 1).End(xlToRight)).EntireColumn.AutoFit
 
    shOrigem.Activate
   
    shconsolidada.Move
   
    For Each ws In ThisWorkbook.Worksheets
        ws.Protect ("peg#2017")
    Next ws

   
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True

End Sub

dasaiev
Membro
Membro
 
Mensagens: 7
Registrado em: Qui Jan 11, 2018 1:44 pm
Has thanked: 1 time
Have thanks: 0 time

Re: Problemas com filtros de tabelas dinâmicas no VBA

Mensagempor xlarruda » Qui Jan 11, 2018 5:00 pm

Colega dasaiev, seria possivel anexar uma cópia da sua planilha para gente verificar?
Pois dessa forma poderiamos usar o depurador e ir direto no erro. Verificar linha a linha desses códigos seria demorado e, eu diria até ineficiente.

Aguardo retorno...
___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda
Avatar do usuário
xlarruda
Membro
Membro
 
Mensagens: 792
Registrado em: Qua Out 04, 2017 9:41 am
Localização: Cuiabá-MT
Has thanked: 97 times
Have thanks: 319 times


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: fortunaim e 3 visitantes