小規模老人保健施設の給食業務向けExcelVBA練習帳、給食帳票管理にVBAを活用、UserFormからセルを操作する6、二次元配列変数

Excel VBA

二次元配列とは

■一次元配列(普通に配列という)

宣言方法 Dim  tiku(4)  As  String

tikuという変数を0から4までのインデックスで5個値をセットします

tiku(0)=”関東”
tiku(1)=”北海道”
tiku(2)=”福島”
tiku(3)=”新潟”
tiku(4)=”高知”

tiku の中身のイメージ → {”関東” , “北海道” , “福島” , “新潟” , “高知”}

■二次元配列

宣言方法 Dim  tiku(3, 2)  As  Variant

tikuという変数で、4行,3列の値を持つのが二次元配列です。

1行目
tiku(0,0)=”関東”
tiku(0,1)=”北海道”
tiku(0,2)=”福島”

2行目
tiku(1,0)=”新潟”
tiku(1,1)=”高知”
tiku(1,2)=”関西”

3行目
tiku(2,0)=”東京”
tiku(2,1)=”いわき”
tiku(2,2)=”大分”

4行目
tiku(3,0)=”徳島”
tiku(3,1)=”九州”
tiku(3,2)=”沖縄”

tiku変数の中身4行、3列のイメージです

■具体的な使い方

■1、For 繰り返し処理を使って二次元配列にデータを取り込むコード

取り込んだ配列 tikuの内容を見てみました。

1行目~4行目まで地区名がそれぞれ格納されています。

インデックスは0から始まっています

配列データの見方

End Subのところにブレークポイントを打つ(クリックするだけ)。メニュータブから表示(V)を選択→ローカルウィンドウを選択する

Sub Sample()の中にマウスカーソルを置いて①の横緑の三角アイコンをクリックすると先ほどのブレークポイントのところで処理が中断する。ローカルウィンドウに配列tikuが出ているので②、③で中身が確認できる。

 

■2、表データのセル範囲を直接インプットする

■プログラム内容

■シートの実際のデータイメージ

■実行結果

配列tikuには表イメージ通りデータがインプットされました。

注意事項
配列変数のインデックスは通常0から始まりますが、セル範囲データをデータ元にした場合は配列のインデックスは1から始まるので、この配列を使って何らかの処理をするときは注意が必要です
■CurrentResionの使い方については下のカードから参照ください
https://kokuwanomi.com/currentregiontukaikata/

まとめ

以上二次元配列をやってみました。実際の表の様子や配列にデータが入る様子が理解できたでしょうか。ちょっとややこしかったですが、自分でコードを書いているうちにコツがつかめていきますので頑張りましょう。ではまた次回。

 

コメント

タイトルとURLをコピーしました