配列(宣言・要素数の変更について)
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 |
実行結果
関連記事
-
-
ユーザー定義関数:セルを取得する(ThisCell プロパティ)
入力されたセルを取得する ワークシート上で使用する Function プロシージ …
-
-
コレクション(Collection)オブジェクト「連想配列」
コレクション(Collection)オブジェクトの使い方 【書式】 Dim my …
-
-
VBA の演算子(比較演算子)
比較演算子 比較演算子による演算の結果は「真」の場合は「True」、「偽」の場合 …
-
-
上付き文字・下付き文字(Superscript,Subscript)
上付き文字(Superscript プロパティ) Superscript プロパ …
-
-
ユーザー設定リストを使って並べ替える(Sort)
VBAでリスト、テーブルを並べ替える(Sort) VBAで、ソートを行うには、S …
-
-
文字列:指定した文字コードに対応する文字を返す(Chr 関数)
Chr 関数の使い方 【書式】 result = Chr ( code ) 引数 …
-
-
文字列:文字列を検索してその最初の文字位置を返す(InStr 関数,InStrB 関数)
InStr 関数・InStrB 関数の使い方 【書式】 result = { I …
-
-
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)
現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …
-
-
取り消し線を設定する(Strikethrough プロパティ)
取り消し線を設定する(Strikethrough プロパティ) Striketh …
-
-
指定した値を8進数で表記した文字列に変換する(Oct 関数)
Oct 関数 の使い方 【書式】 result = Oct ( expressi …
