10 en hexadécimal = 16 en décimal
En VBA si tu codes
i = &H10 c'est exactement la même chose que si tu codes
i = 16.
En VBA quand tu définis une (valeur)
constante:
Const WM_CLOSE As Integer = &H10 ou encore
Const WM_CLOSE As Integer = 16.
c'est pour l'utiliser de manière parlante, explicite, claire, signifiante.
Si des valeurs hexadécimales sont utilisées, c'est parce que c'est comme ça dans la documentation et on le reproduit par souci de cohérence.
Si c'est comme ça dans la documentation, c'est parce que l'hexadécimal a des vertus de représentation concentrée des formes binaires où chaque bit a une valeur représentative d'un état (ON/OFF).
Lorsque tu cites cette constante
WM_CLOSE c'est comme si tu citais sa valeur (
&H10 ou
16)
Seulement c'est beaucoup plus parlant de citer
WM_CLOSE que de citer
&H10 ou
16 car à la lecture du code on sait de suite que c'est pour demander la fermeture d'une fenêtre (en anglais
Windows
Message
CLOSE), alors que 16 c'est juste un nombre qui ne dit pas ce qu'il fait, même s'il fait la même chose.
La valeur &H10 ou 16 ne tombe pas du ciel.
Comme je te l'ai indiqué dans le
message #9 (avec les liens) c'est une valeur qu'on trouve
dans la documentation.