目次

# Static Statement

関数およびサブルーチン内で変数や配列を定義する際に、これらをプロシージャーレベルで再利用することを宣言して、該当する関数およびサブルーチンが終了しても、こうした変数や配列に代入した値を保持するようにします。ここでは Dim ステートメントと同様の規約が適用されます。

Static ステートメント は、配列変数の定義には使用できません。配列は固定サイズで定義する必要があります。

## 構文:

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

## 例:

    Sub ExampleStatic
    Dim iCount As Integer, iResult As Integer
        For iCount = 0 To 2
            iResult = InitVar()
        Next iCount
        MsgBox iResult,0,"The answer is"
    End Sub

    REM スタティック変数の初期化用関数
    Function InitVar() As Integer
        Static iInit As Integer
        Const iMinimum as Integer = 40 REM minimum return value of this function
        if iInit = 0 then REM check if initialized
            iInit = iMinimum
        Else
            iInit = iInit + 1
        End If
        InitVar = iInit
    End Function