2017/01/20(金) 追記
2次元配列の1次元目をサイズ変更する方法を記事にしました → [VBA]2次元配列の1次元目をRedim Preserveする
説明
多次元配列のサイズ変更をReDim Preserveを使って行う場合、は最終次元しか変更できません。
実際やってみましたのサンプルコード
最終次元の長さだけ変更しているので、エラーにならないケース
最終次元の長さ変更はエラーなく実行できます。
Sub test() Dim arr() As String ReDim arr(10, 3) ReDim Preserve arr(10, 100) End Sub
最終次元以外を変更しているので、エラーになるケース
Sub test() Dim arr() As String ReDim arr(10, 3) ReDim Preserve arr(100, 3) End Sub
これを実行すると、下記のエラーが発生します。
参照情報 → MSDNに「 Preserve を使用すると、配列の最後の次元だけサイズを変更できます。」という記載があります
One Reply to “[VBA]多次元配列のRedimは最終次元しか変更できない”