Excel VBA

【Excel VBA】処理の繰り返し方法【While, Until, For】

本記事の内容

Excel VBAで処理の繰り返しを行う方法をご紹介

→ While, Until, For文を使用する

 

こんな方におすすめ
  • Excel VBAで繰り返し処理を実施したい方
  • VBA初心者の方

 

条件を満たす場合に処理を繰り返す【While文】

条件を満たす場合に処理を繰り返したい場合はWhile文を使用します。

構文は下記の通りです。

While文の構文

Do While 条件式

  繰り返し実行する処理

Loop

 

While文を用いたソースコードの例は下記の通りです。

<サンプルコード>

Sub sample()

    '繰り返し参照用の変数を定義
    Dim i As Long
    
    i = 0
    
    '0~4回Print処理を繰り返す
    Do While i < 5
        Debug.Print i & "回目の繰り返し"
        i = i + 1
    Loop

End Sub

 

<マクロ実行結果>

Whiel文 マクロ実行結果

 

条件を満さない場合に処理を繰り返す【Until文】

条件を満さない場合に処理を繰り返したい場合はUntil文を使用します。

構文は下記の通りです。

Until文の構文

Do Until 条件式

  繰り返し実行する処理

Loop

 

Until文を用いたソースコードの例は下記の通りです。

<サンプルコード>

Sub sample()

    '繰り返し参照用の変数を定義
    Dim i As Long
    
    i = 1
    
    'C列のセルに値が空白でない場合はB列に繰り返し回数を入力する
    Do Until Cells(i, "C").Value = ""
        Cells(i, "B").Value = i
        i = i + 1
    Loop

End Sub

 

<マクロ実行結果>

Until文 マクロ実行結果

 

指定した回数だけ処理を繰り返す【For文】

条件を満たす場合に処理を繰り返したい場合はFor文を使用します。

構文は下記の通りです。

For文の構文

For カウンタ変数 = 開始値 To 終了値 (ステップ加算値)

  繰り返し実行する処理

Next (カウンタ変数)

 

※加算値が1の場合はステップ加算値は省略可能

※Nextの後のカウンタ変数は省略可能

 

For文を用いたソースコードの例は下記の通りです。

<サンプルコード>

Sub sample()

    '繰り返し参照用の変数を定義
    Dim i As Long
    
    '0~4回Print処理を繰り返す
    For i = 0 To 4
        Debug.Print i & "回目の繰り返し"
    Next i

End Sub

 

<マクロ実行結果>

For文 マクロ実行結果

 

少なくとも1回は繰り返し処理を実行する【Do While文】

条件を満たす場合に処理を繰り返したい場合はDo While文を使用します。

構文は下記の通りです。

Do While文の構文

Do

  繰り返し実行する処理

While 条件式

 

※Do Until文も同様の構文で実現可能

 

Do While文を用いたソースコードの例は下記の通りです。

<サンプルコード>

Sub sample()

    '繰り返し参照用の変数を定義
    Dim i As Long
    
    i = 0
    
    '0~4回Print処理を繰り返す
    Do
        Debug.Print i & "回目の繰り返し"
        i = i + 1
    Loop While i < 5

End Sub

 

<マクロ実行結果>

Do Wheil文 マクロ実行結果

 

以上が処理の繰り返し方法となります。

ここまでご覧いただきありがとうございました。

 

初心者におすすめの書籍はこちら

 

VBAに詳しくなりたい方におすすめの書籍はこちら

 

 

ABOUT ME
かめぞう
かめぞう
はじめまして。 かめぞうです。ソフトウェア開発会社に勤務する現役エンジニアです。私がエンジニアを続ける中で得た学び、考えを発信しています。リクエストや改善要望など、お気づきの点があればお気軽にご連絡ください。