Dicas para deixar a execução do VBA mais rápida e profissional
Dicas para deixar a execução do VBA mais rápida e profissional
Especialista em Excel
Objetivo: Dar dicas para deixar a execução do VBA Excel mais rápida e profissional.
Ao longo do tempo de programação em VBA vamos nos deparando com situações que exigem muito processamento, o que causa muitas vezes processamento lento e telas piscando de forma incessante.
Neste artigo vamos ver algumas formas de tornar o código mais profissional e resolver alguns problemas que podem ocorrer nestas situações.
Desligar cálculo automático
Uma das primeiras dicas é desligar o cálculo automático quando iniciar o código VBA.
Muitas vezes existem fórmulas nas planilhas que estão sendo trabalhadas, e que durante a execução do código VBA elas vão sendo atualizadas automaticamente a cada iteração do código, o que faz com que o processo ocorra de forma mais lenta.
Para resolver este problema desligamos o cálculo automático ao início do processamento e ligamos novamente ao final, veja um exemplo:
Sub lsTeste() Application.Calculation = xlCalculationManual 'Aqui seu código Application.Calculation = xlCalculationAutomatic End sub
Desabilitar alertas do Excel
Um problema que ocorre muitas vezes é o Excel exibir os seus alertas durante a execução do código VBA, exemplo ao salvar como, ou iterações que questionam sobre a exclusão de um objeto, fazendo com que, muitas vezes, o usuário tenha que interagir desnecessariamente com o arquivo durante a execução.
Para resolver este problema utilize o código abaixo, atenção, pois é muito importante que ao final da execução seja ligado novamente, caso contrário o Excel não exibirá mais alertas.
Sub lsTeste() Application.DisplayAlerts = False 'Aqui seu código Application.DisplayAlerts = True End sub
Como evitar que a tela pisque durante a execução do código VBA
Esta dica além de tornar mais profissional o seu código, faz com que o processamento ocorra de forma muito mais rápida, dado que o sistema não precisará redesenhar a tela todas as vezes em que houver uma interação com uma planilha.
Para resolver este problema veja o exemplo abaixo, lembrando mais uma vez, é necessário ligar novamente ao final da execução.
Sub lsTeste() Application.ScreenUpdating = False 'Aqui seu código Application.ScreenUpdating = True End sub
Desabilitar eventos do Excel
Ás vezes programamos códigos que são executados á partir de eventos que ocorrem no Excel, por exemplo ao mudar de planilha, ou ao alterar dados, e nem sempre são desejados.
Neste caso podemos desabilitar os eventos do Excel, fazendo com que os mesmos não sejam chamados durante a execução de determinado código. Veja no exemplo do código, lembrando que sempre ao final é necessário ligar novamente.
Sub lsTeste() Application.EnableEvents = False 'Aqui seu código Application.EnableEvents = True End sub
Espero que este artigo tenha sido útil.
Abraço
Marcos Rieper
Planilha de Controle Financeiro no Excel
Tenha um controle bonito e completo do seu financeiro.
- Categorias e subcategorias já configuradas
- Planilhas separadas por tabela (configuração, lançamentos, resumo)
- Personalize com suas próprias categorias e ícones
Este conteúdo foi útil?
Continue lendo

Curso de Excel Online Profissional
Neste curso eu ensino desde o Excel Básico até o VBA, atendendo a necessidade de muitas pessoas que querem aumentar a qualidade dos seus trabalhos.

10 Dicas de Como Aumentar a Velocidade do VBA Excel
Como Aumentar a Velocidade do VBA no Excel. Veja 10 dias de como aumentar a velocidade do VBA no seu Excel com 10 dicas pra aplicar agora.

Como Criar Menu de Sistema Profissional no Excel
Veja como criar um menu de sistema profissional no Excel que é exibido e recolhido ao clicar em um botão. Vídeo e download da planilha.


