Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
  • Avatar do usuário
Por FCamargo
Posts
#7976
Bom dia a todos,

Criei uns botão de macro bem simples para mudar de plan.
Gostaria de melhorar este macro incrementando uma ação de atualizar automático o gráfico que esta nesta Plan, entendeu?

Porque hoje eu faço isso manualmente, aperto o botão para mudar de plan e depois tenho que clicar dentro do grafio > Analisar> Atualizar.

Eu queria tornar mais dinamico na hora que mudasse de plan, atualizar também. É possivel?

Meu macro:
Código: Selecionar todos
Sub GRFGRAM()
Plan20.Activate
End Sub
OBS: Eu preciso ter o nome do grafico para inserir no codigo?

Abs
Fabricio
#7980
Bom dia!!


Tente o comando
Código: Selecionar todos
ActiveSheet.ChartObjects("NomeDoGrafico").Chart.Refresh 
Para atualizar neste caso
Eu queria tornar mais dinamico na hora que mudasse de plan, atualizar também. É possivel?
Use o evento
Código: Selecionar todos
Private Sub Worksheet_Activate() 
ou
Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
E por ai vai...........

Att
#7981
alexandrevba escreveu:Bom dia!!


Tente o comando
Código: Selecionar todos
ActiveSheet.ChartObjects("NomeDoGrafico").Chart.Refresh 
Para atualizar neste caso
Eu queria tornar mais dinamico na hora que mudasse de plan, atualizar também. É possivel?
Use o evento
Código: Selecionar todos
Private Sub Worksheet_Activate() 
ou
Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
E por ai vai...........

Att
Obrigado pelo retorno Alexandre

Eu consigo adicionar esta linha no meu codigo do macro acima?
Código: Selecionar todos
ActiveSheet.ChartObjects("NomeDoGrafico").Chart.Refresh
E onde eu vejo o nome do grafico?
#7983
Bom dia!!

O mais justo para nós dois, seria que postasse um arquivo modelo :oops:

Mas se não puder, os eventos desse tipo (tem ação na guia)
https://msdn.microsoft.com/pt-br/librar ... 39775.aspx
Devem ser posto dentro do módulo de guia.
Para saber o nome do grafico, click no mesmo, onde mostra o nome da célula (canto superior esquerdo), vai mostrar o nome dos objetos ex: Gráfico 1

Att
Por FCamargo
Posts
#7987
Alexandre,

Segue em anexo um exemplo da minha tarefa.

Eu perguntei para saber nome do grafico porque tenho varios graficos no meu arquivo e todos estão com o nome "Grafico1". Isso pode dar problema para fazer a rotina para atualizar automatico?

Grato
Você não está autorizado a ver ou baixar esse anexo.
#7988
Bom dia,

segue conforme solicitado, altere o valor na aba TOPOGRAFIA e verifique no gráfico se o valor alterou.
Você não está autorizado a ver ou baixar esse anexo.
#7989
Kledison escreveu:Bom dia,

segue conforme solicitado, altere o valor na aba TOPOGRAFIA e verifique no gráfico se o valor alterou.
Show Kledison,
Como vc fez isso?

Tenho que fazer para minha planilha principal. :D
Avatar do usuário
Por Kledison
Avatar
#7992
No seu caso eu gravei uma Macro.

Entrei na aba que tem a tabela Dinâmica,
liguei o gravador de Macro,
Cliquei com o botão direito em cima da tabela Dinâmica e mandei atualizar,
Desliguei o gravador de Macro,

Foi gerado essa macro por exemplo:
Código: Selecionar todos
Sub Macro4()
'
' Macro4 Macro
'

'
    ActiveSheet.PivotTables("Tabela dinâmica1").PivotCache.Refresh
End Sub
dessa Macro eu peguei somente a linha:
Código: Selecionar todos
ActiveSheet.PivotTables("Tabela dinâmica1").PivotCache.Refresh
Dentro do editor de VBA coloquei a macro dentro do módulo da planilha que tem o gráfico, no seu exemplo Plan1(GRAFICO-TOPO), ficando assim:
Código: Selecionar todos
Private Sub Worksheet_Activate()
ActiveSheet.PivotTables("Tabela dinâmica1").PivotCache.Refresh
End Sub
Bom, foi o jeito que consegui fazer, pois ainda sou iniciante em VBA
Por FCamargo
Posts
#7993
Então no botão de mudar de planilha não é alterado o codigo?

apenas acrescenta o macro dentro do modulo da plan do grafico.
Não entendi muito bem como coloca o macro dentro do modulo da plan que tem o grafico.
#7995
Verifica na imagem abaixo, quando gravei a Macro foi criado o Módulo1, retirei apenas aquela linha que te falei e coloquei dentro do módulo da Planilha conforme imagem.

Acredito que não precisa colocar nada no seu botão para mudar de planilha, pois essa macro já faz a atualização do gráfico assim que a planilha é ativada.

Imagem
Por FCamargo
Posts
#8128
Olá Pessoal!

Desculpe a demora para responder, estava meio ocupado semana passado.

No meu modulo, como eu faço para inserir a linha do codigo para atualizar meu "grafico 2"?

Segue em anexo a imagem exemplo.

Grato

Imagem
Avatar do usuário
Por Kledison
Avatar
#8129
Boa tarde,

o seu gráfico está em Formulário ou em Planilha ?
Avatar do usuário
Por Kledison
Avatar
#8131
Ok,

coloque a macro que você postou dentro do módulo da guia correspondente ao Gráfico, verifique a imagem que postei no dia 25.

Você está colocando dentro do Módulo errado.
#8132
Kledison escreveu:Ok,

coloque a macro que você postou dentro do módulo da guia correspondente ao Gráfico, verifique a imagem que postei no dia 25.

Você está colocando dentro do Módulo errado.
Obrigado meu amigo!!
Funcionou, obrigado pela atenção. :)

Abs
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord