Comment utiliser la directive #Const dans VBA ?

En VBA (Visual Basic for Applications), la directive `#Const` est utilisée pour définir des constantes conditionnelles qui peuvent être utilisées dans des directives de compilation conditionnelle, comme `#If…Then…#Else`. Cela vous permet de créer des segments de code qui sont inclus ou exclus du code compilé en fonction de ces constantes. Voici comment vous pouvez utiliser la directive `#Const` :

1. Définir une constante avec `#Const`

Pour définir une constante, vous utilisez la directive `#Const` suivie du nom de la constante et de sa valeur. La valeur doit être une constante littérale, une expression arithmétique, ou une combinaison de celles-ci.

#Const DEBUG = True
#Const VERSION = 2

2. Utiliser la constante dans des directives conditionnelles

Une fois que vous avez défini une constante avec `#Const`, vous pouvez l’utiliser dans des directives conditionnelles `#If…Then…#Else` pour inclure ou exclure des blocs de code en fonction de la valeur de cette constante.

Sub Test()
    #If DEBUG Then
        Debug.Print "Mode débogage activé"
    #Else
        Debug.Print "Mode débogage désactivé"
    #End If
    
    #If VERSION = 2 Then
        Debug.Print "Version 2 du code activée"
    #Else
        Debug.Print "Ancienne version du code"
    #End If
End Sub

3. Exemples pratiques

Un usage commun des directives conditionnelles est pendant le développement, où vous pouvez vouloir inclure du code de journalisation ou des assertions supplémentaires dans le build de débogage, mais pas dans le build de production.

#Const LOGGING_ENABLED = False

Sub Logger(message As String)
    #If LOGGING_ENABLED Then
        Debug.Print "Log: " & message
    #End If
End Sub

Remarques

  • Les constantes définies avec `#Const` sont des constantes de compilation et ne peuvent être modifiées à l’exécution.
  • `#Const` et les directives de compilation associées ne sont évalués qu’une fois, au moment de la compilation du code.
  • La directive `#Const` est utile lors de la gestion de différentes configurations de code, comme le débogage ou les versions.

En résumé, la directive `#Const` offre une flexibilité dans le temps de compilation pour inclure ou exclure des portions de code selon divers critères ou environnements.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project