Contenu

# Instruction Static

Dans une sous-routine ou dans une fonction, déclare une variable ou une matrice au niveau de la procédure de manière à ce que les valeurs de cette variable ou matrice soient conservées après la fermeture de la sous-routine ou fonction. Les conventions relatives à l'instruction Dim sont également applicables.

Vous ne pouvez pas utiliser l'instruction Static pour définir des matrices de variables. Celles-ci doivent être spécifiées en fonction d'une taille prédéfinie.

## Syntaxe :

    Static VarName[(start To end)] [As VarType], VarName2[(start To end)] [As VarType], ...

## Exemple :

    Sub ExampleStatic
    Dim iCount As Integer, iResult As Integer
        For iCount = 0 To 2
            iResult = InitVar()
        Next iCount
        MsgBox iResult,0,"Le résultat est"
    End Sub

    ' Fonction d'initialisation de la variable statique
    Function InitVar() As Integer
        Static iInit As Integer
        Const iMinimum as Integer = 40 ' valeur de renvoie minimum de cette fonction
        If iInit = 0 then ' vérifier si initialisé
            iInit = iMinimum
        Else
            iInit = iInit + 1
        End If
        InitVar = iInit
    End Function