Ir ao conteúdo

Executar macro automaticamente no excel 2010


Ir à solução Resolvido por Boudais,

Posts recomendados

Postado

Olá,

 

Estou precisando de ajuda para fazer uma macro de cálculos executar automaticamente quando algumas células forem alteradas.

Neste arquivo eu tenho uma planilha com os dados que podem ser alterados e a planilha dos cálculos é outra.

O código que testei até agora é o:

 

Sub Worksheet_Activate()
Application.Volatile
Sheets("OS16222 SERVICE P-S").Select
  Range("BC15").GoalSeek Goal:=0.561, ChangingCell:=Range("AE8")
Range("AP1").Select
End Sub

 

Apesar da função "Application.Volatile" ela não roda automaticamente.

  • Curtir 1
Postado

Experimente o código abaixo com o evento "Calculate".

Cole-o no módulo da planilha em que os dados são alterados.

Private Sub Worksheet_Calculate()
 Sheets("OS16222 SERVICE P-S").Select
 Range("BC15").GoalSeek Goal:=0.561, ChangingCell:=Range("AE8")
 Range("AP1").Select
End Sub

 

Postado

Uma possibilidade de o erro ocorrer é no caso de a planilha "OS16222 SERVICE P-S" estar protegida.

 

Se não for isso disponibilize o arquivo com o código instalado. Se houver mais de um código instalado mantenha-os.

Somente com base na imagem que você disponibilizou eu não consigo te ajudar.

 

Postado

osvaldomp,

 

Primeiramente muito obrigado pela ajuda. Tentei preparar de maneira rápida a planilha para salvar aqui, para que você possa me ajudar, porém a mesma é muito grande e levará um tempo para que eu possa reduzí-la sem perder os cálculos atuais. Hoje ela é só possui este código.

Outro problema que tenho também é que ela possui dados criptografados.

Se em 2 dias eu não finalizar, vou tentar outra maneira de resolver sem usar VBA.

 

Mas agradeço muito a sua ajuda.

Postado

Um dos problemas é esse há muitas abas com dados e até eu checar todos os que podem ser deletados leva tempo. Além dos dados criptografados.

 

valeu 

Postado
  Em 29/07/2016 às 01:05, Boudais disse:

Um dos problemas é esse há muitas abas com dados e até eu checar todos os que podem ser deletados leva tempo.

Expandir  

 

Sugestão - clique com o direito na guia da planilha "OS16222 SERVICE P-S" / Mover ou copiar... / Criar uma cópia / Para pasta / (nova pasta) >> limpe a planilha, menos s células "BC15", "AE8" e "AP1", se estiver protegida mantenha, cole os códigos existentes no arquivo original nos módulos correspondentes do novo arquivo.

Salve e disponibilize aqui.

  • Solução
Postado

Osvaldo

 

Muito obrigado pela ajuda, mas não consegui fazer funcionar a cópia.

Por enquanto estou estudando uma solução sem usar vba.

 

Valeu mesmo pela ajuda

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Mostrar mais  

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

Mostrar mais  
×
×
  • Criar novo...