Redim Preserveで要素数を増やすor減らす
'■Redim Preserveで再定義する(下記はすべて1次元配列を例にしています)
Public Sub sample()
Dim arr() As Variant
'■定義
ReDim arr(3)
arr(1) = "Excel"
arr(2) = "Word"
arr(3) = "Access"
'■要素を保持し、再定義する、Redim と異なりarr(1),arr(2),arr(3)は初期化されない
ReDim Preserve arr(5)
Debug.Print arr(1) '""
Debug.Print arr(2) '""
Debug.Print arr(3) '""
Debug.Print arr(4) '""
Debug.Print arr(5) '""
Dim xxx As Variant
'■最初はRedimで定義がされてないとエラー発生する
ReDim Preserve xxx(2)
End Sub
まとめ
注意点
- Redim Preserveで要素数を増やしたり、減らしたりすることも事実なのですが、
特に2次元配列の場合はある程度の要素数で定義
→最後に不要行削除といった概念も覚えたほうが良いです。
関連記事
コメント