VBA 反復

未分類

VBA(Visual Basic for Applications)での「反復(繰り返し処理)」にはいくつかの方法があります。以下に主な反復処理の方法とその使い方を簡潔に説明します。

🔁 VBAで使える反復構文(ループ)

1. For…Next ループ

決まった回数だけ繰り返したいときに使います。

Dim i As Integer
For i = 1 To 5
MsgBox "回数:" & i
Next i

2. For Each…Next ループ

コレクション(例:セルの範囲や配列)を順に処理したいときに使います。

Dim cell As Range
For Each cell In Range("A1:A5")
cell.Value = "反復中"
Next cell

3. Do While…Loop

条件が「True」の間、繰り返します(前判定)。

Dim i As Integer
i = 1
Do While i <= 5
MsgBox "回数:" & i
i = i + 1
Loop

4. Do Until…Loop

条件が「Trueになるまで」繰り返します(前判定)。

Dim i As Integer
i = 1
Do Until i > 5
MsgBox "回数:" & i
i = i + 1
Loop

5. Do…Loop While / Until

条件を後で判定したい場合(最低1回は必ず実行)

Dim i As Integer
i = 1
Do
MsgBox "回数:" & i
i = i + 1
Loop While i <= 5

🔒 無限ループを防ぐには?

ループ内で条件が変化しないと、無限ループになります。カウンターや条件を必ず変化させましょう。


🔄 Breakするには?

ループの途中で抜けたいときは Exit ForExit Do を使います。

For i = 1 To 10
If i = 3 Then Exit For
MsgBox i
Next i
タイトルとURLをコピーしました