ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

配列(宣言・要素数の変更について)

      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ソース


実行結果

配列 使用例 01




 - VBA基本 , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

引数が省略されたかどうかをチェックする( IsMissing 関数 )

IsMissing 関数の使い方 【書式】 result = IsMissing …

Randomize 関数 例1
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)

Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …

TextToColumns メソッド
セルのデータを区切り文字で複数のセルに分割する(TextToColumns メソッド)

TextToColumns メソッド TextToColumns メソッドを使用 …

Array 関数(1)
Array 関数(バリアント型の配列を作成)

Array 関数の使い方 【書式】 myArray = Array ( elem …

書式を変換(Format 関数)

Format 関数の使い方 【書式】 result = Format ( exp …

現在の日付時刻を取得する
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)

現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …

日付時刻:時・分・秒を取得(Hour、Minute、Second 関数)

日付時刻から時・分・秒を取得する関数 【書式】 time_hour = Hour …

UBound LBound 関数 使用例01
配列の要素数を取得する(UBound 関数・LBound 関数)

UBound 関数・LBound 関数 【書式】 result = UBound …

IsArray 関数 例
変数が配列かどうかをチェックする( IsArray 関数 )

IsArray 関数の使い方 【書式】 result = IsArray( va …

変数がNull 値かどうかをチェックする( IsNull 関数 )

IsNull 関数の使い方 【書式】 result = IsNull ( exp …