[VBA] 配列はすでに宣言されています。

コンパイルエラー : 配列はすでに宣言されています
Dim hoge(5) as Integer
ReDim hoge(0 To 10)
上記のような書き方はできない。
なぜなら、配列の拡張を行う ReDim ステートメントは動的配列にしか使えないからだ。
Dim hoge() As Integer
ReDim Preserve hoge(0 To 10)
はじめに配列を宣言しているときにインデックスを決めてしまうと拡張できない。
なお、Preserve オプションを付けることで元の値が保持されたまま配列の拡張を行うことができる。
Preserve オプションは二次元配列等には使えないので注意する。
http://msdn.microsoft.com/ja-jp/library/w8k3cys2.aspx

このブログの人気の投稿

Excel で入力した文字に勝手に取り消し線が入る

コピーした行の挿入が表示されない時はフィルタされていないかチェック