VBA講座05 For...Next で繰り返し処理します

 マクロの編集画面(Visual Basic Editor)の一番下にはイミディエイトウィンドウと呼ばれる画面が用意されています。

VBAイミディエイトウィンドウ

 数学用の(たとえば素数を見つけるなどの)プログラミングでは、ワークシートを使わなくても、この画面に数値を出力してしまえばそれで用が済むことも多いので、使い方を覚えておくと便利です。今回はここに 1 から 9 の数字を並べてみます。
 

数並べマクロ

 1 から 9 の数字を表示させるマクロです。

 Sub 数並べ()

  Dim x As Integer

  For x = 1 To 9
   Debug.Print x
  Next x

 End Sub

 実行するとイミディエイトウィンドウに 1 から 9 の数字が縦並びに表示されます。
 

For...Nextステートメント

 同じ処理を何度も繰り返すことを ループ とよびます。 VBA にはこのループ処理を行うためのステートメントがいくつか用意されていますが、処理回数を指定する場合には For...Nextステートメント を用います。

 一連の記述は「カウンタ変数」の指定から始まります。カウンタ変数とは1回の処理ごとに値を増やす(あるいは下げる)変数で、今の例では x がカウンタ変数となっています。そして

For カウンタ変数 = 開始値 to 終了値

のように、ループをどの数値から始めて、どこで終わるのかを指定します。上のマクロでは

For x = 1 To 9

となっているので、x = 1 から始めて、2, 3, ..., 9 まで同じ処理を繰り返すという意味です。
 For と Next に挟まれた部分が繰り返される処理内容で、上のマクロでは

Debug.Print x

となっています。これは「イミディエイトウィンドウに x を表示する」という意味です。Debug.Print はメソッドという種類のステートメントに属しますが、メソッドはまた別の機会に詳しく解説するつもりなので、当面の間は Debug.Print の使い方だけ覚えておいてください。

 ≫ Cellsプロパティについて学びます
 ≫ 数学マクロ講座トップページへ戻る

スポンサーリンク
末尾広告
末尾広告

コメントをどうぞ

メールアドレスが公開されることはありません。