どーも!睡魔です!
本日のテーマは「配列」と「For文」です!
今回は配列に格納した名前を
メッセージボックスに表示するマクロを作成してみます!
マクロの作成の仕方はこちらを参照してください!
一つずつ紹介していきますのでまずは配列から!!
1.配列ってなに??
変数とは値を入れる箱のようなもの、と以前お話ししましたよね^^
その箱が電車のように繋がっているとイメージしてください!
それが配列です^^
例えば3人分の名前を格納する変数を3つ宣言するよりも、
長さ(箱の数)が3つの配列を1つ宣言する方が楽ですし、
処理を書く時にも便利になります!
実際に宣言してみましょう!
宣言の仕方は
Dim 配列名(配列の長さ - 1) As 型
となります!
配列の長さ - 1ってなに??ってなりますよね^^
電車の場合は先頭から1両目、2両目、、、と数えますが、
配列は先頭から0番目、1番目、、、と数えていきます!
ですから、配列の長さが3つ必要な場合は
0番目、1番目、2番目となるので「2」を指定するわけですね!
次は宣言した配列に名前を格納しましょう^^
格納の仕方は
配列名(要素番号) = 格納したい値
といった感じになります!
配列のイメージは掴めましたか??
次はFor文について紹介しますね!!
2.For文って何??
For文とは同じ処理を繰り返し行いたいときに使う構文です!
例えば、1.で作成した配列に格納した名前を1人ずつ
メッセージボックスに表示したい場合、下記のようなコードに
なります!
今回の場合、表示するのが3つですのでまだ楽ですが、
表示するデータ量が100とか1000になったとき、
このコードを量産するのを想像するとゾッとしますよね^^;
そういう時に便利なのがFor文です!
下記のようにFor文を使って書き換えてみましょう!
どうでしょうか?
MsgBox が一つでよくなり、すっきりしましたよね^^
For文の書き方は以下の通りです!
For カウント用の変数 = 初期値 To 終わりの数
処理
Next カウント用の変数
今回の場合は配列の要素数だけFor文を繰り返したいので
初期値は配列の先頭の0、終わりの数は配列の最後の2
となります!
strName(i)のiの部分には現在のiの値が入るので
1回目の時には初期値である0
2回目の時には初期値+1の1
3回目の時には2回目の値+1の2
が代入されているので
配列の先頭から順番に表示されるということですね^^
ここまで出来たら実行してみましょう^^
ちゃんと3人分表示されましたね!
いかがでしたでしょうか?
配列とFor文は組み合わせて使うことが多いので是非
使い方をマスターしてくださいね^^
今日はこの辺で!
睡魔のブログのmy Pick





























