MS Access | 17 Passos Essenciais para Melhorar seu Código VBA

MS Access | 17 Passos Essenciais para Melhorar seu Código VBA

Escrever código é fácil. Escrever código bom é difícil. Mas o que é, afinal, um código bom? Geralmente, pensamos nos seguintes atributos:


- O código funciona (sem bugs).

- O código é documentado.

- O código é fácil de manter.

- O código é rápido.


Infelizmente, alcançar esses objetivos costuma ser trabalhoso e difícil. Para ajudar nesse processo, compilei uma lista de boas práticas de dicas e técnicas que facilitam a escrita de códigos mais próximos do ideal de serem livres de defeitos e fáceis de manter.


 Que tal aprender estes códigos também: 

MS Access | Aplicando Função Concatenação de Valores nos Campos das Consultas
MS Access | Utilizando SendKeys de Forma Eficiente
MS Access | Automatizando a Compactação do Bancos de Dados
MS Access | Como Gerenciar Links das Tabelas
MS Access | Quebra de Texto em Linhas com Comprimento Máximo
MS Access | Monitoramento de Conexões de Usuários
MS Access | Mapeando 3.500 Erros com a Criação de Tabelas de Erros
MS Access | Código para Registro de Logs
MS Access | 17 Passos Essenciais para Melhorar seu Código VBA
MS Access | Código VBA para Backup de Todas as Tabelas Comentado


A seguir, descreverei 17 Passos Essenciais para Melhorar seu Código VBA.


1. Use Option Explicit  

Esta não é apenas uma dica, mas uma exigência para escrever código VBA. Se você não incluir a instrução Option Explicit no topo de cada módulo do seu projeto, você está pedindo por problemas na depuração da aplicação. Ao especificar Option Explicit, você obriga o VBA a forçar a declaração de todas as variáveis usadas, evitando erros causados por nomes de variáveis incorretos ou não declarados.


Exemplo de código com erro:


Sub ShowBugs ()

  Dim intX As Integer

  Dim intY As Integer

  Dim intZ As Integer


  intX = 1

  imtY = 2 ' Erro de digitação! O correto seria intY.

  intZ = 3


  Debug.Print intX + intY + intZ

End Sub



Sem o Option Explicit, o VBA não gera erro de compilação, mas o valor de imtY será utilizado em vez de intY, causando resultados inesperados. Com Option Explicit, esse tipo de erro seria identificado na compilação.



2. Declare Variáveis Corretamente  

Ao declarar suas variáveis com Dim, mantenha todas as declarações juntas no início de cada procedimento para fácil visualização e organização. Também é recomendável declarar cada variável em uma linha separada para evitar ambiguidades.


Exemplo de código incorreto:



Dim intX As Integer, intY, intZ As Integer



Neste caso, intY será um Variant, não um Integer. Para evitar isso:



Dim intX As Integer

Dim intY As Integer

Dim intZ As Integer



3. Evite Variants  

O tipo de dado Variant é flexível, mas deve ser evitado sempre que possível devido ao overhead de memória. Prefira tipos de dados específicos, como Integer, String ou Double, que são mais eficientes.



4. Não Use Caracteres de Declaração de Tipo  

Declarações de tipo usando caracteres especiais, como Dim CName$ para declarar CName como String, são práticas antiquadas e devem ser evitadas. Prefira a sintaxe moderna com As String.



5. Use Escopo de Variável Restrito  

Sempre que possível, limite o escopo de suas variáveis ao menor escopo necessário. Se uma variável for usada apenas em um procedimento, declare-a como Private dentro desse procedimento. Variáveis Public devem ser usadas com cautela.


6. Converta Tipos de Dados Explicitamente  

Embora o VBA faça conversões automáticas de tipos de dados, isso pode levar a bugs. Use funções de conversão explícitas, como CInt, CDbl e CStr, para evitar problemas com conversões automáticas.


Dim myNumber As Double

myNumber = CInt("123") ' Converte explicitamente para Integer.



7. Defina o Retorno de Funções Explicitamente  

Toda função deve ter o seu tipo de retorno declarado explicitamente para evitar a conversão automática para Variant.



8. Implemente Tratamento Robusto de Erros  

O tratamento de erros é crucial. Utilize On Error Goto para capturar erros e exibir mensagens apropriadas.


On Error GoTo ErrorHandler


' Código principal


Exit Sub


ErrorHandler:

  MsgBox "Ocorreu um erro: " & Err.Description



9. Controle do Fluxo do Programa  

Evite usar comandos antigos como Goto, que podem dificultar a leitura do código. O uso de Goto deve ser reservado apenas para tratamento de erros.



10. Use Constantes para Evitar Valores Codificados  

Valores numéricos codificados diretamente no código dificultam a manutenção. Use constantes para substituí-los.



Const TAX_RATE As Double = 0.0825

Dim total As Double

Let total = subTotal * TAX_RATE



11. Use Convenções de Nomeação de Variáveis  

Utilize convenções de nomenclatura para descrever claramente o tipo de dado de cada variável (e.g., strName para uma string, intAge para um inteiro). Isso melhora a legibilidade e manutenção do código.



12. Escolha Nomes de Variáveis Significativos  

Evite nomes de variáveis como x, y ou z. Prefira nomes descritivos que indiquem claramente o propósito da variável, como intQuantidade ou strNomeCliente.



13. Adicione Comentários  

Comentários claros ajudam outros desenvolvedores (ou você mesmo, no futuro) a entender o código. Comente os procedimentos, as linhas importantes e explique o raciocínio por trás de trechos complexos.



' Este procedimento calcula o valor total com imposto.



14. Use Indentação Padrão  

Estruturas de controle como If..End If e For..Next devem ser devidamente indentadas para melhorar a legibilidade e evitar erros.



15. Evite Construtos de If em Linha Única  

Evite a prática de colocar a condição If e a ação resultante na mesma linha.



If condicao Then

    Acao

End If



16. Use Select Case Corretamente  

Sempre utilize o bloco Select Case corretamente, separando as condições das ações e adicionando um Case Else para capturar valores não antecipados.



17. Não Use Stop para Depuração  

Use pontos de interrupção em vez da instrução Stop para depurar o código. Pontos de interrupção não são salvos no código, evitando problemas quando o código for para produção.


 

Seguir essas boas práticas resultará em um código VBA mais robusto, fácil de manter e menos propenso a erros.


  Clique aqui e nos contate via What's App para avaliarmos seus projetos 

Envie seus comentários e sugestões e compartilhe este artigo!
brazilsalesforceeffectiveness@gmail.com


 Série Donut Project 
DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes


 Clique nas capas abaixo e compre também: 

DONUT PROJECT: VBA - Projetos e Códigos de Visual Basic for Applications (Visual Basic For Apllication)


Série Top 10 Funções: Top 10 Funções VBA para o Microsoft Excel (Série Top 10 Funções - Microsoft Excel)


eBook - DONUT PROJECT 2024 - Volume 03 - Funções Financeiras - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 02 - Conectando Banco de Dados - André Luiz Bernardes

eBook - DONUT PROJECT 2024 - Volume 01 - André Luiz Bernardes

Nenhum comentário:

Postar um comentário

diHITT - Notícias