L'informatique à votre portée
L'informatique prêt-à-porter

Faites appel à moi pour vos formations
sur les dpts 81, 31, 82, 11 et 67 (Strasbourg)
Confiez moi vos développements Office

FacebookTwitterGoogle BookmarksLinkedin

Durée de vie

4 mars 2014
Imprimer E-mail

C'est la période pendant laquelle une variable contient une valeur, celle-ci peut changer plusieurs fois pendant cette durée de vie.
Lorsque la variable est hors de portée (invisible) sa vie est finie car elle n'a plus de valeur.
Lorsque la variable est déclarée, elle est initialisée. Les variables numériques sont initialisées à 0 (zéro), les chaînes de longeur variable sont initialisées à une chaîne de longeur nulle (""), les chaînes fixes sont remplies avec le caractère ASCII 0 (chr(0)), les variants sont initialisés à Empty, les variables objets sont initialisées avec Nothing.
Si dans une procédure, une variable est déclarée avec Static au lieu de Dim, la variable est hors de portée lorsque le programme quitte la procédure, mais elle garde sa valeur (et n'est donc pas réinitialisée) tant que le code est exécuté. Vous pouvez alors appeler de nouveau la procédure (ou la fonction) et retrouver sa valeur.
Écrivez dans un module les 2 procédures suivantes :
Sub Message_Incremente()
    Affiche_Mess
    Affiche_Mess
    Affiche_Mess
End Sub

Sub Affiche_Mess()
    Static N As Byte

    N = N + 1
    MsgBox "Ceci est le message N° : " & N
End Sub
Puis dans la fenêtre Exécution, tapez Message_Incremente puis appuyez sur Entrée. Vous constatez que le numéro du message est incrémenté alors que la variable n'a qu'une portée de procédure.