Dicas para desenvolvermos códigos melhores, sermos mais acertivos, entendermos melhor o que entregaremos mediante o que nos foi solicitado, sempre é bem vindo. Espero que gostem destes pontos e os observem ao implementarem códigos nas suas futuras aplicações...
É muito difícil eliminarmos completamente todos os Bugs dos nossos códigos VBA.
Com o tempo, ao passo que desenvolvemos nossa biblioteca pessoal de funcionalidade que já foi utilizada e experimentada em várias aplicações, passaram por inúmeras depurações, os nossos códigos tendem a tornarem-se mais estáveis.
Mas enquanto estamos na fase de criar tais bibliotecas dando os primeiros passos no desenvolvimento, podemos evitar muitos deslizes comuns durante o processo de criação e implementação. Geralmente tais cuidados requerem um mínimo de ajustes no modo como desenvolvemos nossas aplicações, considere-as a partir de agora:
1º. Utilize a expressão 'Option Explicit' no início dos seus módulos
Essa expressão forçará você a sempre lembrar-s de inicializar quaisquer variáveis que por ventura crie no seu código. Além disso se preocupará adicionalmente de definí-las com o tipo correto, de acordo com o conteúdo que receberão.É verdade que inserir essa cláusula no início dos seus módulos lhe acrescentará um pouco de trabalho, mas o retorno será excelente, pois lhe poupará problemas como, por exemplo:- Utilizar tipos diferentes de variáveis,- Escrever erroneamente o nome delas eEvite usar VARIANTS.- Suas rotinas tenderão a ser executadas muito mais rapidamente.
O VBA automaticamente converte os tipos de dados na sequência de um conjunto interno de regras que você não pode controlar. Isso significa que você não pode garantir que o tipo de dados convertidos será o que você precisa.
Variantes consomem mais espaço de armazenamento do que tipos de dados que são mais específicos.Variantes não rejeitam dados inválidos.
É verdade que com a grande disponibilidade de memória dos sistemas operacionais atuais, bem como o tamanho das memórias RAM tornem o fato da declaração de tipos de dados com o objetivo de conservar os recursos não seja tão importante como era antes.
Mas pense:
- Os tipos de dados são maiores do que a memória que consomem.- Os tipos de dados garantem a validade de seus dados.
Por exemplo:
Um tipo de dados Integer aceitará apenas um valor inteiro válido. Se passar um valor decimal ou um caractere alfabético, o VBA o rejeitará e esse será o primeiro passo para proteger a validade dos seus dados.
Especificar um tipo de dados não irá eliminar todos os erros, mas garantirá que o valor definido seja o certo.
2º. Adapte-se a ideia de 'identar' o seu código
A identação ajuda a compreender o fluxo de idéias que o seu código quer transmitir.A identação serve de ajuda quanto a identificar certos procedimento no código.Ao utilizar FOR...NEXT, WHILE, IF, CASE por exemplo, considere a indentação como um modo de facilitar, e em muito, a identificação de blocos específicos no seu código.
3º. Cuide da expressão 'On Error Resume Next'
No MS Excel esta instância faz com que qualquer erro seja ignorado e continue o processamento.Em algumas situações fará o MS Excel ignorar erros que não devem ser ignorados. Talvez existam erros no seu código que você sequer tenha percebido, por causa deste comando, mas que precisem ser tratados, percebidos.
4º. Comete o seu código o máximo que puder
Nada pode ser mais frustrante do que ao revisitar um código desenvolvido a uns meses (no meu caso semanas), perceber que não deixou ali nenhuma 'cola' para ajudar no seu trabalho. Adicione alguns comentários para descrever sua lógica, isso poderá lhe poupar muito tempo em eventuais manutenções no código.
5º. Codificação simples, clara
Sempre que possível, mantenha suas Funções e Rotinas com uma codificação simples e clara.Procure dividir seu código em módulos pequenos, bem escritos, com alta performace individual.Estes cuidados tornarão qualquer debugagem posterior mais fácil.
6º. Utilize o gravador de Macros
Não há vergonha alguma em aprender como escrever um código de modo razoável, antes de perdemos muito tempo pesquisando.Quando estiver disponível na sua aplicação, utilize o gravador de macro (ou um gerador automático de código) para ajudá-lo a identificar (definir) as propriedades e métodos.Caso não consiga se lembrar de um nome ou sintaxe de uma propriedade ou método, sempre poderá recorrer ao help e à Internet.
7º. Sempre considere soluções diferentes para o mesmo problema
Não é raro demorarmos para implementar uma solução que não se adequa muito bem a aplicação como um todo. Nesses casos considere a possibilidade de olhar para outro lado e desenvolver algo (por vezes) totalmente diferente para "encaixar" essa solução pontual ao conjunto da aplicação.
8º. Debugador - Como utilizar
Aprenda a utilizar o debugador do VBE.O debugador é uma excelente ferramenta quando usada plenamente.Habitue-se a consultar o help e aprender tudo o que pode retirar do debugador, isso lhe permitirá poupar muito tempo.
9º. Utilize Constantes
Armazenar um valor em constantes que raramente ou nunca mudam é uma boa prática.
Lembre-se, você não pode alterar o valor de uma constante enquanto o código está sendo executado, somente pode alterá-lo durante o desenvolvimento.
As constantes são mais fáceis de manter, mesmo que o valor ocorra apenas algumas vezes durante todo o seu código - você sabe exatamente onde ir para atualizar o valor.
Por exemplo, se você se referir a um valor de desconto de 10 por cento ao longo de uma dúzia ou mais de procedimentos, pode criar a seguinte constante:
ConDiscount Const As Single = 0,1
Desse modo quando for necessário efetuar uma alteração dos descontos, você tem de efetuar apenas uma atualização. Abrirá o respectivo módulo e alterará a instrução Const. E isso é certamente mais fácil do que localizar e atualizar diversas variáveis ao longo de diversos módulos.
Reference:
Tags: VBA, Tips, Code, errors, VBA Tips & Tricks