Ir ao conteúdo
  • Cadastre-se
Boudais

RESOLVIDO Executar macro automaticamente no excel 2010

Recommended Posts

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

osvaldomp

 

Obrigado pela ajuda,mas ainda não funcionou bem.

Eu anexei o erro que está acontecendo. Por favor veja o arquivo anexado se puder me ajudar.

 

Att.

Erro R0.xlsx

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara de forma simples faça uma copia simples do seu arquivo e apague os dados que nao interessa, ou seja não influenciam na solução do seu problema.

 

Ta ae o seu exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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 

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 minutos atrás, Boudais disse:

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

 

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia 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

×