繰り返し|For文の基本的な書き方・使い方

今回説明するFor文こそ、学校や職場で繰り返ししているエクセルの同じような処理を、自動化・効率化できる大事なテクニックです。

またFor文を使うと、繰り返し行う同じ処理のプログラム部分は1回だけ書けばよく、繰り返す回数を指定するだけでOKです。
初めてプログラミングする人にとって、繰り返しの処理のイメージは難しいところなので、くわしく解説していきます。

For文の書き方

For カウンタ変数 = 開始値 to 終了値
(処理)
Next

カウンタ変数が終了値を超えるまで、処理を繰り返し実行します。

繰り返し回数を管理するための変数が、カウンタ変数です。このカウンタ変数に開始値と終了値を設定することで、繰り返し回数を指定できます。

プログラムの動きとしては、最初にカウンタ変数に開始値がセットされ、処理を実行するごとにカウンタ変数が+1されます。
カウンタ変数が終了値を超えた時、繰り返し処理が終了します。

繰り返し処理の流れ

  1. カウンタ変数に開始値をセット
  2. カウンタ変数が、終了値が超えていないか判定する
    超えた時は、繰り返し処理を終了する→Nextの後ろのプログラムへ
    超えていない時は、For文の中の処理を実行する
  3. カウンタ変数の値を自動で+1する
  4. 判定処理の2に戻る

For文の使い方

実際にカウンタ変数の動きが見れる、次のプログラムを作って実行してみてください。

実行すると、次のような1から3の値を表示するメッセージボックスが3回表示されます。

今回のプログラムでは、「i = 1」 の部分で、カウンタ変数iに開始値の1がセットされています。その右側の「to 3」では終了値を指定しているので、iが3を超えたら繰り返しが終わりという意味になります。

For文の中では、MsgBoxを使ってiの値をメッセージボックスに表示しています。このメッセージボックスを表示する処理が、何回も繰り返し行われます。

For文のプログラム自体は3行しかありませんが、カウンタ変数の値を変化させながら、繰り返し処理のプログラムは何回も動いています。実際のプログラムの動きは、次のようになります。初めての繰り返し処理なので、プログラムの動きを1つずつ読んで、頭のなかでイメージしてください。

カウンタ変数iに開始値1をセット

【カウンタ変数が1の時】
判定:カウンタ変数は3を超えているか?
結果:超えていないので、メッセージ表示処理を実行
加算:カウンタ変数の値を自動で+1 ⇒カウンタ変数は2

【カウンタ変数が2の時】
判定:カウンタ変数は3を超えているか?
結果:超えていないので、メッセージ表示処理を実行
加算:カウンタ変数の値を自動で+1 ⇒カウンタ変数は3

【カウンタ変数が3の時】
判定:カウンタ変数は3を超えているか?
結果:超えていないので、メッセージ表示処理を実行
加算:カウンタ変数の値を自動で+1 ⇒カウンタ変数は4

【カウンタ変数が4の時】
判定:カウンタ変数は3を超えているか?
結果:超えているので、繰り返し処理を終了

POINT
  • 繰り返し行う処理部分は字下げをして、プログラムを見やすくしましょう。
  • Nextの後ろにカウンタ変数(今回はi)を書いている参考書もありますが、特に理由がなければ省略してOKです。

 

まとめ

VBAで業務の効率化などを目指す場合、この繰り替え処理は必須の知識です。

最初のうちは、繰り返しの流れ・動きをなかなか頭の中だけではイメージできません。そのため、今回の説明ように「i=1の時、」「i=2の時、」・・・と紙に書いて、繰り返しの動きを整理してみましょう。

何度もプログラムを組むことで、この繰り返しの動きを頭の中だけでイメージできるようになってきます。

 

関連記事

初心者のためのエクセルVBA超入門講座
VBAおすすめ本
エクセルVBAおすすめ本|実際に読んだ本を目的別に紹介
成果を出す5つのポイント
VBA超入門
えくとしょ | 初心者のためのエクセルとVBAの図書館
タイトルとURLをコピーしました