Excel/VBA

TOP

For文を途中で抜ける

For文を途中で抜ける方法の説明画像です

条件に応じてExit Forでループを抜ける

シートの2行目から最後の行まで繰り返し処理を行い、各行でB列に「〇」という記号を入力しながら、A列のセルが黄色になった時点で繰り返し処理を終了します。

サンプルコード


Sub Forを抜ける()

    Dim i As Long, LastRow As Long
    
    'A列の最終行を取得
    LastRow = Cells(Rows.Count, "A").End(xlUp).Row
    
    '2行目から最終行まで繰り返し、A列が黄色だった場合、For文を抜け、それまではB列に〇をつける
    For i = 2 To LastRow
        If Cells(i, "A").Interior.Color = RGB(255, 255, 0) Then  'RGB(255,555,0)=黄色
            Exit For
        Else
            Cells(i, "B").Value = "〇"
        End If
    Next i
    
End Sub
        

実行結果

A列が黄色になる手前で処理を中断することができました。

実行結果を表した画像です

Exit ForとExit Subの違い

Exit Forを使用すると、For文を途中で抜けますが、その後にある処理は引き続き実行されます。

Exit_Forの説明画像です

Exit Subの場合はプロシージャ(Sub~End Sub)を終了させることとなる為、その後にある処理は実行されません。

Exit_Forの説明画像です