配列(宣言・要素数の変更について)
2015/04/01
配列の宣言
<Type 型の静的配列(固定長配列)の宣言>
Dim myArray ( [ lower To ] upper ) As Type
<Variant(バリアント)型の静的配列(固定長配列)の宣言>
Dim myArray ( [ lower To ] upper ) [ As Variant ]
<Type 型の動的配列の宣言>
Dim myArray () As Type
<Variant(バリアント)型の動的配列の宣言>
Dim myArray () [ As Variant ]
<Type 型の配列の要素数の変更>
ReDim [ Preserve ] myArray ( [ lower To ] upper ) [ As Type ]
<Variant(バリアント)型の配列の要素数の変更>
ReDim [ Preserve ] myArray ( [ lower To ] upper ) [ As Variant ]
【各項目の説明】
- myArray ・・・ 配列の変数名
- lower ・・・ 配列の添字最小値(先頭のインデックス:省略可 ⇒ 省略した場合、「0」あるいは、Option Base 1 を指定している場合は「1」となります。)
- upper ・・・ 配列の添字最大値(末尾のインデックス)
- Type ・・・ 変数のデータ型 を指定します。
Preserve:配列の要素数を変更する際、その配列にすでに格納されている値を失わずに要素数を変更するためのキーワードです。
(※ これを使用する時は、配列の次元 を変更することはできません。)
一度宣言した静的配列の要素数・次元を変更することはできません。動的配列の場合、何度でも変更することが可能です。
配列の宣言 実例
VBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
Sub sample_array01() 'String(文字列型)要素数4の静的配列(固定長配列)の宣言 Dim strArray(3) As String 'Integer(整数型)要素数6の静的配列(固定長配列)の宣言 Dim intArray(0 To 5) As Integer 'Variant(バリアント型)要素数25の静的配列(固定長配列)の宣言 Dim myArray(1 To 25) 'Long(長整数型)の動的配列の宣言 Dim lngArray() As Long '要素数を変更 ReDim lngArray(1 To 5) 'Variant(バリアント型)の動的配列の宣言 Dim valArray() '要素数を変更 ReDim valArray(2) MsgBox "型:" & TypeName(strArray) & " / 要素数:" & UBound(strArray) - (LBound(strArray) - 1) & Chr(13) & _ "型:" & TypeName(intArray) & " / 要素数:" & UBound(intArray) - (LBound(intArray) - 1) & Chr(13) & _ "型:" & TypeName(myArray) & " / 要素数:" & UBound(myArray) - (LBound(myArray) - 1) & Chr(13) & _ "型:" & TypeName(lngArray) & " / 要素数:" & UBound(lngArray) - (LBound(lngArray) - 1) & Chr(13) & _ "型:" & TypeName(valArray) & " / 要素数:" & UBound(valArray) - (LBound(valArray) - 1) End Sub |
実行結果
関連記事
-
-
VBA の演算子(文字連結演算子:& 演算子 + 演算子)
文字連結演算子 文字連結演算子は、文字列の連結を行うときに使用する演算子で、「& …
-
-
VBA の演算子(算術演算子)
算術演算子 算術演算を行うときに使用する演算子です。 ^(べき乗)、*(積)、/ …
-
-
文字列:指定した文字の文字コードを取得する(Asc 関数)
Asc 関数 【書式】 result = Asc ( string ) 引数・戻 …
-
-
日付時刻:日付時刻データを計算( DateAdd 関数 )
DateAdd 関数(日付・時刻の値を加算・減算結果を取得) 【書式】 resu …
-
-
日付時刻:日付・時刻の間隔を取得( DateDiff 関数 )
DateDiff 関数の使い方 【書式】 result = DateDiff ( …
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …
-
-
データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)
VarType 関数 の使い方 VarType 関数は、引数に、データ型を調べた …
-
-
VBA の演算子(比較演算子)
比較演算子 比較演算子による演算の結果は「真」の場合は「True」、「偽」の場合 …
