MENU

【初心者向け】Excel VBAでFor文を使いこなす!基本構文から繰り返し処理の実例まで

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

A子さん

同じ処理を何度も書くの、面倒くさいな…
繰り返し処理ってどう書くの?
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を活用すると柔軟性が高まる。

まずはシンプルな例から始めて、繰り返し処理に慣れていきましょう!

関連記事リンク

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

かもろぐ屋です
Microsoftが大好きな社内SEです
転職経験あり・内定辞退経験あり

なお絶賛婚活中

コメント

コメントする

CAPTCHA


目次