配列(宣言・要素数の変更について)
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 |
実行結果
関連記事
-
-
乱数を生成する(Rnd 関数)
Rnd 関数の使い方 Rnd 関数は、0 以上、1 未満の範囲の乱数を単精度浮動 …
-
-
文字列:文字列の一部を別の文字列で置換(Replace 関数)
Replace 関数の使い方 【書式】 result = Replace ( s …
-
-
セルのデータを区切り文字で複数のセルに分割する(TextToColumns メソッド)
TextToColumns メソッド TextToColumns メソッドを使用 …
-
-
指定した値を16進数で表記した文字列に変換する(Hex 関数)
Hex 関数 の使い方 【書式】 result = Hex ( expressi …
-
-
配列の添字の最小値を「1」に設定する
Option Base ステートメントを使用する 【書式】 Option Bas …
-
-
文字列:文字列を指定した形式に変換する(StrConv 関数)
StrConv 関数の使い方 【書式】 result = StrConv ( s …
-
-
日付時刻:年・月・日を取得(Year、Month、Day 関数)
日付から年・月・日を取得する関数 【書式】 date_year = Year ( …
-
-
文字列:アルファベットを小文字または大文字に変換(LCase 関数,UCase 関数)
LCase 関数・UCase 関数 の使い方 【書式】 <アルファベットの大文字 …
-
-
列挙型変数(Enum ステートメント)
列挙型変数を使う 列挙型変数を使用するには、Enum ステートメントを使って、宣 …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …
