この記事で解決できる3つの疑問

繰り返し処理ってどう書くの?
For文ってどこで使えばいいの?
結論:繰り返し処理は「For文」が基本!ループ処理でVBAの力を最大限に活用しよう
Excel VBAでは、同じ処理を何度も繰り返したい場面がよくあります。たとえば、複数のセルに同じ操作を加えたり、表の中から条件に合うものを探したり。そんなとき、For文を使えば一瞬で処理できます。コードが短く、読みやすくなるため、初心者が最初に覚えるべき構文のひとつです。
目次
For文ってなに?
For文とは、「何回も同じ処理を繰り返したい」ときに使う構文です。
- たとえば「1から10まで数字を順番に出す」
- 「10行ある表の中で全てに同じ操作をする」
といった処理に使います。
For~Nextの基本構文と使い方
Dim i As Integer For i = 1 To 10 ' 繰り返したい処理 Next i
i
はカウンタ変数。1から10まで1ずつ増えながら繰り返します。
To
のあとは終点。ここまで処理を繰り返します。
実例:1〜10の数字を表示する
Dim i As Integer For i = 1 To 10 Debug.Print i Next i
実例:A1〜A10に「完了」と書き込む
Dim i As Integer For i = 1 To 10 Cells(i, 1).Value = "完了" Next i
このコードでは、A列の1行目から10行目までに「完了」と入力されます。
For文と変数の組み合わせ方
Dim i As Integer Dim 合計 As Integer 合計 = 0 For i = 1 To 5 合計 = 合計 + i Next i MsgBox 合計 ' 結果:15
1+2+3+4+5 の合計を求めています。
StepやExit Forを使った応用
Stepで増減の幅を変える:
For i = 10 To 1 Step -1 Debug.Print i Next i
このコードは10から1へカウントダウンします。
Exit Forで途中終了:
For i = 1 To 10 If i = 5 Then Exit For Debug.Print i Next i
iが5になったら処理を終了。1〜4が表示されます。
For Eachとの違いは?
For文は数値ベースのループ、For Eachはオブジェクト(セルやシートなど)をループするときに使います。
Dim cell As Range For Each cell In Range("A1:A10") cell.Value = "済" Next cell
このように、範囲内のセルを1つずつ処理したい場合には「For Each」のほうが便利です。
まとめ:繰り返し処理はFor文から始めよう!
- For文は「同じ処理を何度も行いたい」ときの基本中の基本。
- 変数と組み合わせることでより高度な処理が可能に。
- StepやExit Forを活用すると柔軟性が高まる。
まずはシンプルな例から始めて、繰り返し処理に慣れていきましょう!
コメント