トップページ

#5_3 For...Nextステートメント


繰り返し処理

前回までに学んだ条件分岐と並んで重要になるのが同一処理を指定回数繰り返す「繰り返し処理(ループ処理)」です。

大きく分けて「For...Next」「Do Loop」「For Each... Next」ステートメントがあります。

今回は最もシンプルで最も重要な「For...Next」ステートメントを解説します。

For...Nextステートメントの基本構造

For...Nextステートメントは3つの部分から成り立っており、

① カウンタ変数の宣言

② ループ回数の指定(For部)

③ Nextステートメント

このうち①についてはDimを用いて宣言するのみです。大切なのは②及び③の部分です。以下で詳しく見ていきましょう。

ループ回数の指定(最低値とStepキーワード)

Forに続くループ回数の指定の中で、通常カウンタ変数の最低値には「1」を指定しますが、状況によっては次のような指定も可能になります。

この場合、処理は「4」から「9」までの計6回繰り返されます。

さらに、次のようにStepキーワードを用いることで、カウンタ変数の増減幅を自由に変更することが可能です。カウンタ変数が減少する方向にも指定することができます。

ワークシートの名前を繰り返し処理で変更する

For...Nextステートメントの中でカウンタ変数を利用することで、例えば全ワークシートの名前を変更することができます。

上記の例のように、カウンタ変数の使い道を応用することで、さらに発展したマクロを作ることが可能になります。

繰り返し処理の中で条件分岐を利用する

場合によってはFor...Nextステートメントの繰り返しの中で条件分岐したいという事があります。

例えば何かの条件に達した時にループを抜け出したいときには「Exit For」でループを抜ける事ができます。

全シートの中に「WS4」という名前のシートを見つけた時点でシートを削除してループを抜けるマクロを次に示します。