上記の答えが正しいかを行うことができますが、私はちょうどいくつかの詳細を追加したいです。あなたはキーワードを保存使用している場合
は、あなたがは、最後の配列 の次元のサイズを変更することができますし、すべてので次元の数を変更することはできません。 の例では、配列に次元が1つしかない場合は、 次元が最後の次元であるためサイズを変更できます。ただし、 配列に2つ以上のディメンションがある場合は、最後のディメンションの のサイズのみを変更しても、配列の内容は保持されます。 次の例は、アレイに含まれる既存のデータ を消去せずに、ダイナミックアレイの最後の ディメンションのサイズを増やす方法を示しています。 documentationから
:
この例では、動的配列変数のためのストレージスペースを割り当て、再割り当てするReDimステートメントを使用しています。オプションベースが1であると仮定します。
Dim MyArray() As Integer ' Declare dynamic array.
Redim MyArray(5) ' Allocate 5 elements.
For I = 1 To 5 ' Loop 5 times.
MyArray(I) = I ' Initialize array.
Next I
次のステートメントは、配列のサイズを変更して要素を消去します。
Redim MyArray(10) ' Resize to 10 elements.
For I = 1 To 10 ' Loop 10 times.
MyArray(I) = I ' Initialize array.
Next I
次の文は、配列のサイズを変更しますが、要素は削除しません。
Redim Preserve MyArray(15) ' Resize to 15 elements.
あなたの間違いの例:ReDim Preserve DynArray(5 To 5)
下限を変更した場所。
なぜあなたのタイトルはC++と言うのですか?その質問はすべてvbaに関するものですか? –
タイプが間違っています....しかし、送信後に変更する方法を知らない... – angelbj55
ありがとうございました! – angelbj55