Lar Mídia social Excel 2016 VBA Speed ​​Tips - dummies

Excel 2016 VBA Speed ​​Tips - dummies

Índice:

Vídeo: 6 Ways to Speed up your Excel Macros 2025

Vídeo: 6 Ways to Speed up your Excel Macros 2025
Anonim

O VBA para o Excel 2016 é rápido, mas nem sempre é rápido o suficiente. (Os programas de computador nunca são rápidos o suficiente.) Continue lendo para descobrir alguns exemplos de programação que você pode usar para acelerar suas macros.

Desligando a atualização da tela

Ao executar uma macro, você pode sentar e assistir todas as ações na tela que ocorrem na macro. Embora isso possa ser instrutivo, depois de ter a macro funcionando corretamente, muitas vezes é irritante e pode retardar consideravelmente o desempenho de sua macro. Felizmente, você pode desativar a atualização da tela que normalmente ocorre quando você executa uma macro. Para desligar a atualização da tela, use a seguinte declaração:

Aplicação. ScreenUpdating = False

Se você deseja que o usuário veja o que está acontecendo em qualquer ponto durante a macro, use a seguinte declaração para ativar a atualização da tela novamente:

Aplicação. ScreenUpdating = True

Para demonstrar a diferença de velocidade, execute esta macro simples, que preenche um intervalo com números:

Sub FillRange () Dim r como Long, c Como número Dim longo como Long Number = 0 Para r = 1 a 50 Para c = 1 a 50 número = número + 1 células (r, c). Selecione as células (r, c). Valor = Número Próximo c Próximo r End Sub

Você vê cada célula sendo selecionada eo valor que está sendo inserido nas células. Agora, insira a seguinte declaração no início do procedimento e execute-a novamente:

Aplicação. ScreenUpdating = False

O intervalo é preenchido muito mais rápido e você não vê o resultado até a macro terminar e a atualização da tela (automaticamente) é definida como True.

Quando você está depurando o código, a execução do programa às vezes termina em algum lugar no meio, sem que você tenha ativado a atualização da Tela novamente. Isso às vezes faz com que a janela de aplicativos do Excel se torne totalmente insensível. A saída deste estado congelado é simples: volte para o VBE e execute a seguinte declaração na janela Imediato:

Aplicação. ScreenUpdating = True

Desligando o cálculo automático

Se você tiver uma planilha com muitas fórmulas complexas, você pode achar que você pode acelerar as coisas, configurando o modo de cálculo para o manual enquanto a macro está sendo executada. Quando a macro terminar, ajuste o modo de cálculo de volta para automático.

A seguinte declaração define o modo de cálculo Excel como manual:

Aplicação. Cálculo = xlCalculationManual

Execute a próxima instrução para definir o modo de cálculo como automático:

Aplicação. Cálculo = xlCalculationAutomatic

Se seu código usa células com resultados de fórmulas, desligar o cálculo significa que as células não serão recalculadas a menos que você indique explicitamente ao Excel fazê-lo!

Eliminando as mensagens de alerta difíceis

Como você sabe, uma macro pode executar automaticamente uma série de ações. Em muitos casos, você pode iniciar uma macro e, em seguida, sair na sala de interrupção enquanto o Excel faz o que é. Algumas operações do Excel, no entanto, exibem mensagens que exigem uma resposta humana. Esses tipos de mensagens significam que você não pode deixar o Excel desacompanhado enquanto ele executa sua macro - a menos que você conheça o truque secreto.

Você pode instruir o Excel para que não exiba esses tipos de alertas durante a execução de uma macro.

O truque secreto para evitar estas mensagens de alerta é inserir a seguinte declaração VBA na sua macro:

Aplicação. DisplayAlerts = False

O Excel executa a operação padrão para esses tipos de mensagens. No caso de excluir uma folha, a operação padrão é Excluir. Se você não tem certeza do que é a operação padrão, execute uma prova para ver o que acontece.

Quando o procedimento termina, o Excel redefine automaticamente a propriedade DisplayAlerts para True. Se você precisar ativar os alertas antes do término do procedimento, use esta instrução:

Aplicação. DisplayAlerts = True

Simplificando referências de objeto

Como você provavelmente já sabe, as referências a objetos podem se tornar muito longas. Por exemplo, uma referência totalmente qualificada para um objeto Range pode ser assim:

Workbooks ("MyBook. Xlsx"). Folhas de trabalho ("Folha1") _. Range ("InterestRate")

Se sua macro usar esse intervalo com freqüência, você pode querer criar uma variável de objeto usando o comando Set. Por exemplo, a seguinte instrução atribui esse objeto Range a uma variável de objeto chamada Taxa:

Set Rate = Workbooks ("MyBook. Xlsx") _. Folhas de trabalho ("Folha1"). Range ("InterestRate")

Depois de definir esta variável de objeto, você pode usar a taxa variável em vez da longa referência. Por exemplo, você pode alterar o valor da célula chamada InterestRate:

Taxa. Valor =. 085

Isso é muito mais fácil de digitar do que a seguinte declaração:

Workbooks ("MyBook. Xlsx"). Folhas de trabalho ("Folha1"). _ Range ("InterestRate") =. 085

Além de simplificar sua codificação, o uso de variáveis ​​de objeto acelera consideravelmente suas macros.

Declarando tipos de variáveis ​​

Você geralmente não precisa se preocupar com o tipo de dados que você atribui a uma variável. O Excel lida com todos os detalhes por trás dos bastidores. Por exemplo, se você tem uma variável chamada MyVar, você pode atribuir uma quantidade de qualquer tipo a essa variável. Você pode até mesmo atribuir uma seqüência de texto a ele mais adiante no procedimento.

Se você deseja que seus procedimentos sejam executados o mais rápido possível, diga ao Excel que tipo de dados serão atribuídos a cada uma de suas variáveis. Isso é conhecido como declarando um tipo de variável.

Em geral, você deve usar o tipo de dados que requer o menor número de bytes, mas ainda pode manipular todos os dados atribuídos a ele. Quando o VBA funciona com dados, a velocidade de execução depende do número de bytes que a VBA tem à sua disposição. Em outras palavras, quanto menos uso de bytes usa, o VBA mais rápido pode acessar e manipular os dados.Uma exceção para isso é o tipo de dados Integer. Se a velocidade for crítica, use o tipo de dados Long.

Se você usa uma variável de objeto, você pode declarar a variável como um tipo de objeto específico. Aqui está um exemplo:

Dim Rate como Range Set Rate = Workbooks ("MyBook. Xlsx") _. Folhas de trabalho ("Folha1"). Range ("InterestRate")

Usando o With-End With structure

Você precisa definir uma série de propriedades para um objeto? Seu código corre mais rápido se você usar a estrutura With-End With. Um benefício adicional é que seu código pode ser mais fácil de ler.

O código a seguir não usa With-End With:

Selection. HorizontalAlignment = xlCenter Selection. VerticalAlignment = xlCenter Selection. WrapText = True Selection. Orientação = 0 Seleção. ShrinkToFit = False Selection. MergeCells = False

Aqui está o mesmo código, reescrito para usar With-End With:

With Selection. HorizontalAlignment = xlCenter. VerticalAlignment = xlCenter. WrapText = True. Orientação = 0. ShrinkToFit = False. MergeCells = False End Com

Quando você usa With-End With, verifique se cada declaração começa com um ponto.

Excel 2016 VBA Speed ​​Tips - dummies

Escolha dos editores

Como executar o teste beta para uma aplicação iOS - manequins

Como executar o teste beta para uma aplicação iOS - manequins

Depois de executar o seu aplicativo em alguns dispositivos e está confiante de que está funcionando da maneira que é suposto, considere levá-lo às mãos de alguns testadores beta. O teste beta permite que você receba comentários de usuários reais e repare todos os erros antes que o público em geral os veja. Você pode se surpreender ...

Como publicar no Amazon Appstore para Android - dummies

Como publicar no Amazon Appstore para Android - dummies

Publicação para o Amazon Appstore para Android é semelhante à publicação na Google Play Store: você cria uma conta e, em seguida, talvez seja necessário pagar uma taxa de desenvolvedor. Ao contrário do Google Play Store, os aplicativos devem ser revistos no Amazon Appstore para Android, portanto, planeje alguns dias entre o dia em que você enviar ...

Como preparar ativos gráficos em seu aplicativo Android para publicar na Play Store - Dummies

Como preparar ativos gráficos em seu aplicativo Android para publicar na Play Store - Dummies

Quando você publica um aplicativo Android na Play Store, você interage com o Console do desenvolvedor do Google Play. O passo essencial nesta interação é o passo em que você carrega o arquivo APK do seu aplicativo. É o passo essencial, mas não é o único passo. Você também deve usar a Consola do desenvolvedor da Play Store ...

Escolha dos editores

As Leis de Minecraft Redstone - dummies

As Leis de Minecraft Redstone - dummies

Cada mecanismo Redstone da Minecraft possui um conjunto diferente de propriedades que determinam como ele atua. Você deve entender as relações entre suas propriedades. Depois de trabalhar com Redstone por um tempo, a forma e a função das suas ferramentas podem se tornar bastante intuitivas. Até então, você pode usar essas informações para descobrir quais opções são ...

Minecraft Pocket Edition Guia de Sobrevivência - dummies

Minecraft Pocket Edition Guia de Sobrevivência - dummies

Ao contrário da versão bastante complicada para PC do Minecraft, Pocket Edition (PE) de A Minecraft tem uma série de etapas mais direta para alcançar seu ponto final, o Nether Spire. Para sobreviver ao PE Minecraft, um jogador precisa seguir a série de passos descritos abaixo. Punch madeira e construir um abrigo. Todo o Minecraft ...

Minecraft Para Dummies Cheat Sheet - dummies

Minecraft Para Dummies Cheat Sheet - dummies

Minecraft requer um jogador para reunir recursos para sobreviver, construir, criar, e avance no jogo. Devido aos diferentes ambientes encontrados no Minecraft, um jogador precisa usar diferentes estratégias para reunir recursos eficientemente nas três principais áreas do jogo - Overland, the Mines e the Nether. Uma vez que estes ...

Escolha dos editores

Como criar mensagens de e-mail de impressão em série no Word 2013 - dummies

Como criar mensagens de e-mail de impressão em série no Word 2013 - dummies

Palavra 2013 permite que você expire mensagens de e-mail personalizadas usando a opção E-Mail para mala direta. Esta opção funciona apenas quando você configura o programa Microsoft Outlook no seu computador. Depois disso, você inicia o documento principal para sua fusão de e-mail obedecendo a estas etapas:

Como criar múltiplas colunas em um documento do Word 2007 - dummies

Como criar múltiplas colunas em um documento do Word 2007 - dummies

Para converter seu padrão single- (ou não-) coluna do documento do Word 2007 em um com várias colunas, basta escolher o formato da coluna que deseja no menu Colunas. Instantaneamente, seu documento é transformado em uma maravilha multicolora!

Como criar tabelas rápidas nas tabelas do Word 2008 para Mac - dummies

Como criar tabelas rápidas nas tabelas do Word 2008 para Mac - dummies

Ajudam você a organizar idéias ou dados que seriam aborrecedores e difíceis de compreender em forma de parágrafo regular. Com o Word 2008 para Mac, você pode facilmente criar tabelas - às vezes chamadas de grades - em qualquer lugar em seus documentos. A maneira mais fácil de criar tabelas é com um dos melhores recursos novos ...