7 Dicas para deixar a macro mais rápida

Share on facebook
Share on google
Share on twitter
Share on linkedin
Share on whatsapp
Share on telegram

Leia também...

Contagem de valores únicos

Contagem de valores únicos O Excel é uma ferramenta incrível, sou suspeito pra falar, mas admito que ainda faltam algumas coisas, algumas funções que ainda

Ler »

7 Dicas para deixar a macro mais rápida

Atualização:  Se essas dicas não são o suficiente, clique aqui e conheça mais outras 9.

Essa é para você que já está acostumado com a utilização das Macros em suas planilhas mas percebe que elas poderiam rodar um pouquinho mais rápido.

Vou mostrar uma série de códigos e dicas bastante simples que podem te ajudar a ganhar ainda mais tempo com suas planilhas automatizadas. Vamos a elas.

Se estiver com preguiça de ler, assista ao vídeo, caso contrário, continua mais abaixo.


1 – Desabilitando a atualização da tela

Este código faz com que o Excel não fique atualizando a tela mostrando toda a movimentação de escrever fórmulas, mover em planilhas, ou qualquer coisa que sua macro faça. Isso faz com que o computador não precise gastar tempo nem recurso atualizando a imagem a ser exibida na tela.

Application.ScreenUpdating = False 'Desabilita atualização de tela

'Seu código aqui

Application.ScreenUpdating = True 'Habilita atualização de tela

2 – Modo de cálculo manual

Por padrão o Excel utiliza o modo de cálculo automático, o que significa que sempre que você altera o conteúdo de qualquer célula ele recalcula todas as outras de todas as abas de seu arquivo, e quanto mais fórmulas houverem, mais demorado vai ser.

Uma forma de acelerar sua Macro é desabilitar o modo de cálculo automático, e só habilitar quando for necessário recalcular alguma coisa na planilha.

Application.Calculation = xlManual 'Desativa modo automático de cálculo

'Seu código aqui

Application.Calculation = xlAutomatic 'Ativa modo automático de cálculo

3 – Atualizar somente a planilha (aba) atual

Esta pode ser combinada com a anterior, e só faz sentido se sua pasta de trabalho tiver mais de uma planilha (aba).

O que ela faz é atualizar somente a planilha que está ativa, e não enquanto no modo de cálculo automático atualiza todas as fórmulas de todas as planilhas, com este código você atualiza somente a que estiver ativa no momento.

ActiveSheet.Calculate 'Calcula somente as fórmulas da aba ativa

4 – Evite usar a área de transferência

Quando utilizamos as funções de copiar e colar forçamos o computador a guardar em sua memória rápida os dados que copiamos. Para acelerar, e não utilizar essa memória do computador você pode usar os código abaixo.

Copiando e colando normalmente

Ao invés de utilizar algo do tipo:

Range("A1:A200").Copy
Range("B1").PasteSpecial
Application.CutCopyMode = False 'Limpa a área de transferência

Utilize algo como:

Range("A1:A200").Copy Destination:= Range("B1")

 

Copiando e colando valores

Ao invés de utilizar:

Range("A1:A200").Copy
Range("B1").PasteSpecial xlPasteValues
Application.CutCopyMode = False 'Limpa a área de transferência

Busque utilizar:

Range("B1:B200").Value = Range("A1:A200").Value

 

Copiando e colando fórmulas

Ao invés de usar algo como:

Range("A1:A200").Copy
Range("B1").PasteSpecial xlPasteFormulas
Application.CutCopyMode = False 'Limpa a área de transferência

Utilize:

Range("B1:B200").Formula = Range("A1:A200").Formula

5 – Inserir fórmula em várias células ao mesmo tempo

É provável que você tenha células com a mesma fórmula, normalmente em casos que você escreve a fórmula e depois arrasta ou copia para as outras células que serão iguais.

Utilizar o código anterior já acelera, a cópia, mas existe um jeito mais rápido, veja.

Ao invés de usar algo como:

Range("A1").FormulaR1C1 = "=SUM(RC[1]:RC[5])" 'Escreve fórmula na célula A1
Range("A1").Copy
Range("A1:A20").PasteSpecial xlPasteFormulas 'Copia a fórmula de A1 até A20
Application.CutCopyMode = False 'Limpa a área de transferência

Tente usar:

Range("A1:A20").FormulaR1C1 = "=SUM(RC[1]:RC[5])" 'Escreve fórmula da célula A1 a A20

6 – Evite usar .select

Toda vez que aparece em seu código algo como:

Range("A1").Select

O Excel irá selecionar aquela célula da mesma forma que você faria com o mouse, o que é desnecessário pois leva tempo de processamento fazer isso, e você pode escrever praticamente tudo em sua macro sem utilizar o .select.

Se for necessário selecionar alguma célula, objeto, planilha, pasta de trabalho, faça assim:

Range("A1").Activate

Você conseguirá fazer praticamente as mesmas coisas que faria usando outro método, só que mais rápido.


7 – Limpe seu código

Se você monta boa parte de suas macros utilizando o gravador de macros uma boa prática é abrir e analisar o código recém escrito.

O gravador escreve tudo que você faz, inclusive aquelas partes desnecessárias, como mover a barra de rolagem, selecionar uma célula qualquer por acidente, ou qualquer outra coisa que você faça enquanto está gravando a macro que não tem nada a ver com o que você quer fazer de fato.

Ao analisar o código recém criado você também perceberá que poderá melhorar seu código utilizando as ouras dicas descritas aqui, substituindo alguns trechos e apagando outros.

Atualização:  Se essas dicas não são o suficiente, clique aqui e conheça mais outras 9.


Acompanhe o Função Excel
facebook-logo youtube-logo googleplus-logo twitter-logo

E aí, o que achou?

Compartilhe

Share on facebook
Share on twitter
Share on linkedin
Share on whatsapp
Share on telegram

Planilhas prontas

ANALISE

ANALISE é um sistema completo de análise econômico-financeira contábil e gerencial para empresas de todos os segmentos e portes que tenha uma contabilidade atualizada e fidedigna.

As análises são feitas através do correto preenchimento das informações advindas da contabilidade da sua empresa nas interfaces do sistema, basta preencher que o arquivo fará o cálculo dos principais indicadores econômicos financeiros pra você.

Tenha os números da sua empresa estruturados em telas dinâmicas de análise e potencialize o seu processo de tomada de decisões.

Saber mais »

Leia também...

Gerador de catálogos

Com o Gerador de catálogos do Função Excel você poderá criar catálogos personalizados de maneira muito fácil e rápida.

Os catálogos são gerados em formato PDF de forma automática, basta setar as configurações desejada e o arquivo fará tudo por você.

Gere seus catálogos e alavanque suas vendas.

Saber mais »
Logo - Ícone

COMPARTILHE COM O MUNDO

Gostou do artigo? Não seja egoísta, compartilhe!

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on whatsapp
WhatsApp

VOCÊ ESTÁ POR DENTRO?

Junte-se a lista de e-mails do Função Excel

Inscreva-se agora