Truques VBA Raramente Usados - Não Seja Pego no Loop

Truques VBA Raramente Usados - Não Seja Pego no Loop




Sei que pode parecer redundância, mas pense sempre fora da caixa. Mesmo que, para isso, precise abrir mão de usar o VBA. Nós programadores precisamos utilizar as melhores soluções entre os 2 mundos e isso, às vezes, na verdade muitas vezes, significará utilizarmos aquilo que já existe pronto no próprio MS Excel.

Não seja pego na Loop: 

Francamente, tento correr de usar Loops. Geralmente são demasiadamente lentoooosss!

Um erro comum que todos cometemos ao aprender VBA é o de usar Loops quando realmente não são necessários. Observe este exemplo simples logo abaixo, onde a proposta é colocarmos a palavra vazio escrita em cada célula que estiver em branco.

Sub EahhWrongWay ()
Dim Bcell Como Gama

Para Cada Bcell Em Range ("A1: D500")

Se IsEmpty (Bcell) Então Bcell = "vazio"

Próximo Bcell
End Sub

Agora compare com o código abaixo:

Sub OhhEahhRightWay ()
Range ( "A1: D500"). SpecialCells (xlCellTypeBlanks) = "vazio"
End Sub


Muito Melhor!

Este código não somente é melhor como muito mais fácil de escrever e muito mais rápido. 

Da próxima vez que precisar de algo assim, não se apresse com um Loop. Dê um passo para atrás e pense seriamente em utilizar as funções construídas em C# dentro do próprio MS Excel. Algumas das minhas favoritas são: SpecialCells, AutoFilter, Find, AdvancedFilter e Subtotals, para citar apenas algumas. Quando começar a usá-las, sempre pensará duas vezes antes de usar de qualquer jeito um loop


Posso prometer-lhe que utilizar estes recursos quase sempre significará ter sua solução sendo executada pelo menos 100 vezes mais rápida do que num Loop! 


brazilsalesforceeffectiveness@gmail.com

✔ Brazil SFE®Author´s Profile  Google+   Author´s Professional Profile   Pinterest   Author´s Tweets

Nenhum comentário:

Postar um comentário

diHITT - Notícias