オデッセイの運営サイト一覧

Excel®️、Accessのマクロ・VBAのスキルを評価する資格VBAエキスパート

企業・教育機関の皆さまへ 試験会場を探す お問い合せ

やってみよう!Excel VBAで業務改善!|VBAとの出会い編

第6話「星くん、繰り返し構文を学ぶ!」

第6話「星くん、繰り返し構文を学ぶ!」

登場人物紹介

実際のコードで確認しよう!

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つのメッセージが表示されるんだろ?」

「その通り、大正解だ」

八木くんがコードを実行すると、星くんがいった通りのメッセージが表示されました。

「このコードのように、最終値や初期値の値は数値(リテラル)ではなく、変数を利用することもできるんだ。つまりプログラムの流れによって、自由に繰り返し回数を変更できるってわけさ」

星くんはフンフンと、しきりにうなずいています。

シーズン1 「VBAとの出会い」編:エピソード一覧

一覧へ戻る

MENU