Sub Sample()
Dim i
For i = 1 To 3
MsgBox i & "回目の繰り返し処理です"
Next i
End Sub
「星、このコードを実行すると、何が表示されると思う?」
「えっと…。同じメッセージが3回、表示されるのかい?」
「ブブーッ!残念でした。正確には、
"1回目の繰り返し処理です"、"2回目の繰り返し処理です"、"3回目の繰り返し処理です"と、
3つの異なるメッセージが表示されるよ」
星くんが、しまった!という顔をします。
「あ…そっか。カウンタ変数のiは、繰り返すごとに加算されていくんだったよね」
「じゃあ、星。この場合はどうなると思う?」
八木くんはニヤニヤしながら、先ほどのコードを書き換えました。
Sub Sample()
Dim i
Dim A
A = InputBox("数値を入力してください")
For i = 1 To A
MsgBox i & "回目の繰り返し処理です"
Next i
End Sub
「このコードを実行すると、ダイアログボックスが表示される。そこに数値の5を入力すると、どうなるでしょう?」
星くんは、ジッとコードを見つめます。
「InputBox関数で変数Aに5の値が代入されるんだよね。
For…Nextステートメントの最終値が変数Aになっているということは…。わかった!
"1回目の繰り返し処理です"から"5回目の繰り返し処理です"まで、5つのメッセージが表示されるんだろ?」
「その通り、大正解だ」
八木くんがコードを実行すると、星くんがいった通りのメッセージが表示されました。
「このコードのように、最終値や初期値の値は数値(リテラル)ではなく、変数を利用することもできるんだ。つまりプログラムの流れによって、自由に繰り返し回数を変更できるってわけさ」
星くんはフンフンと、しきりにうなずいています。