Conflito entre macros - Atualizar dinâmicas e pintar Mapas  [Resolvido]

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

Conflito entre macros - Atualizar dinâmicas e pintar Mapas

Mensagempor TutoElizeu » Qui Mai 16, 2019 10:06 am

Bom dia Mestres!

Preciso de mais uma ajudar se puder,

Eu tenho um Projeto "Rastreabilidade da Soja" onde uma macro pinta nos mapas do Pr e Mapa do MT (Cada um em uma sheet), as cidades que eu estou comprando a soja.
De acordo com o % de proteína de cada cidade a macro pinta de uma determinada cor. Até aí perfeito, funciona muito bem eu só preciso clicar num botão

O grande problema e que estou quebrando a cabeça e não consigo resolver é que se eu colocar para pintar automático assim que a tabela dinâmica é alterada aí então gera conflito entre as duas macros que pintam os mapas e não funcionam. Quando eu clico para atualizar a tabela dinâmica também gera conflito.

Você consegue me ajudar a resolver este problema?

Macro para pintar o Mapa do PR
Código: Selecionar todos
Sub ColorirMapaPR()

Dim Cidade As Range
Dim Celula As String

For Each Cidade In Range("CIDADESPR")
    Celula = Cells(Cidade.Row, 3)
        ActiveSheet.Shapes(Cidade).Fill.ForeColor.RGB = Range(Celula).Interior.Color
Next Cidade

End Sub


Código: Selecionar todos
Macro para pintar o Mapa do MT
Sub ColorirMapaMT()

Dim Cidade As Range
Dim Celula As String

For Each Cidade In Range("CIDADESMT")
    Celula = Cells(Cidade.Row, 3)
        ActiveSheet.Shapes(Cidade).Fill.ForeColor.RGB = Range(Celula).Interior.Color
Next Cidade

End Sub


Essas macros estão em módulos separados

Macro para atualizar dinâmicas
Código: Selecionar todos
Sub Atualizar_Dinamicas()
  'Objeto de tabela dinâmica, atualiza todas as Tabelas Dinamicas
  Dim pivotTable As pivotTable

  'Loop por todos os objetos da planilha
  For Each plan In ActiveWorkbook.Sheets
    For Each pivotTable In plan.PivotTables
        pivotTable.RefreshTable
    Next
  Next
 
  Application.ScreenUpdating = True ' Desliga a atualização de tela
 
 
End Sub


Obrigado
TutoElizeu
Membro
Membro
 
Mensagens: 173
Registrado em: Dom Dez 13, 2015 8:39 pm
Has thanked: 30 times
Have thanks: 2 times

{ SO_SELECT }

Re: Conflito entre macros - Atualizar dinâmicas e pintar Map

Mensagempor EdsonBR » Qui Mai 16, 2019 10:54 am

Bom dia, TutoElizeu

Mais perguntas do que respostas:

Onde estão seus ranges nomeados? Numa planilha só? Na mesma planilha do range "CIDADESUF"? Na mesma planilha que as Shapes? E em relação aos ranges com nomes das cidades? São ranges nomeados em nível de Pasta de Trabalho ou de Planilha? Em que trecho vc chama a Sub?

O ideal seria vc anexar sua planilha com a estrutura semelhante e já alimentada com algumas cidades para testarmos.

Sem isso e como vc não expôs qual mensagem de erro (conflito) e em qual ponto ocorre, a hipótese que posso levantar para o erro seria o uso do ActiveSheet para qualificar as Shapes ou a falta de qualificação para os Ranges e Cells.
Imagem
Avatar do usuário
EdsonBR
Membro
Membro
 
Mensagens: 546
Registrado em: Qui Nov 05, 2015 11:43 pm
Localização: Joinville, SC
Has thanked: 109 times
Have thanks: 339 times

Re: Conflito entre macros - Atualizar dinâmicas e pintar Map

Mensagempor TutoElizeu » Qui Mai 16, 2019 1:22 pm

Puxa vida Edson,

Obrigado pelo retorno,
Infelizmente não sei te responder todas essas questões.
Posso postar a planilha no Sendspace para você ver?

Obrigado.
TutoElizeu
Membro
Membro
 
Mensagens: 173
Registrado em: Dom Dez 13, 2015 8:39 pm
Has thanked: 30 times
Have thanks: 2 times

Re: Conflito entre macros - Atualizar dinâmicas e pintar Map

Mensagempor EdsonBR » Qui Mai 16, 2019 2:44 pm

Mande então o link ou zipe e anexe aqui mesmo uma amostragem com a mesma estrutura...
Imagem

For this post the author EdsonBR thanked:
TutoElizeu (Seg Mai 20, 2019 8:42 am)
Avatar do usuário
EdsonBR
Membro
Membro
 
Mensagens: 546
Registrado em: Qui Nov 05, 2015 11:43 pm
Localização: Joinville, SC
Has thanked: 109 times
Have thanks: 339 times

Re: Conflito entre macros - Atualizar dinâmicas e pintar Map  [Resolvido]

Mensagempor TutoElizeu » Seg Mai 20, 2019 8:41 am

Bom dia Edson,

Quero agradecer pela boa vontade em me ajudar! Vocês todos do Fórum são excelentes e estão de parabéns!

Eu consegui resolver o problema fazendo de outra forma, coloquei os dois mapas e o range das cidades num mesma sheet,
Resolveu, não tem mais conflito, obrigado.
TutoElizeu
Membro
Membro
 
Mensagens: 173
Registrado em: Dom Dez 13, 2015 8:39 pm
Has thanked: 30 times
Have thanks: 2 times


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: LaerteB e 6 visitantes