PR

 本連載の第59回で、配列を使って2つの表の差分を調べる「TableCheck」プロシージャの概要をご紹介しました。そして「TableCheck」プロシージャのプログラムコードの内容を見ていく前に、配列の基礎知識として、1次元配列と2次元配列の簡単なサンプルを、第60回と第61回で解説してきました。
 そして今回は、配列の締めくくりとして、「ReDim」というキーワードを使い、配列の要素を後から決定するテクニックをご紹介し、もともとの「TableCheck」プロシージャのコードを読み解いていきたいと思います。

最初に要素数を決めない配列を宣言する

 配列を利用するとき、最初から配列の要素がいくつになるのかわからない場合もあります。県名と県庁所在地名を格納したShikokuという2次元配列では、「Shikoku(4,2)」のように最初から要素数がわかっていましたが、プログラムで処理するデータはそういうものばかりとは限りません。
 そのようなときは、次のように要素数を指定せずに配列を宣言します。

   Dim Shikoku() As String

 このような後から要素数が変わる配列を、「動的配列」と呼びます。実際にプログラム処理の過程で要素数が決定した時点で、次のように配列を宣言し直します。

   ReDim Shikoku(4, 2)

 「ReDim」は、配列のために必要なメモリ領域を割り当てるステートメントです。ちなみに、前回ご紹介した「Lesson61_1」プロシージャを、動的配列を使って書き直すと、次のようになります。