Eraseステートメントを使うと、固定サイズの配列の場合は要素を再初期化し、
動的配列の場合は割り当てたメモリを解放することができます。
サンプルでは、固定サイズの配列に値をセットしながらその内容を
イミディエイトウィンドウに出力して、Eraseステートメントによって
初期化された配列の内容を再びイミディエイトウィンドウに出力しています。
● サンプル1 ●
Sub Sample()
Dim i As Integer
Dim NumArray(5) As Integer
'(1)
For i = 0 To 5
NumArray(i) = i + 1
Debug.Print NumArray(i)
Next i
' 各要素の値を0にします。
Erase NumArray
'(2)
For i = 0 To 5
Debug.Print NumArray(i)
Next i
End Sub
イミディエイトウィンドウには、(1)では
1
2
3
4
5
6
と出力され、(2)では、
0
0
0
0
0
0
と出力されます。
その他の固定配列、動的配列の例は次のとおりです。
● サンプル2 ●
Sub Sample2()
'可変長文字列型の配列。
Dim StrVarArray(5) As String
'バリアント型の配列。
Dim VarArray(5) As Variant
'動的配列。
Dim DynamicArray() As Integer
'メモリ領域を割り当てます。
ReDim DynamicArray(5)
'各要素の値を長さ0の文字列("")にします。
Erase StrVarArray
'各要素の値をEmpty値にします。
Erase VarArray
'配列が占有していたメモリを解放します。
Erase DynamicArray
End Sub
|