VBA for文の途中で先頭に戻る

  • 作成日 2023.05.19
  • vba
VBA for文の途中で先頭に戻る

VBAで、for文の途中で先頭に戻るコードを記述してます。「GoTo」を使用することで可能です。

環境

  • OS windows10 64bit
  • EXCEL 2021

サンプルコード

for文の途中で先頭に戻るには、「GoTo」でラベルを指定して「Next」まで移動させます。

    Dim i As Long
      
    For i = 1 To 10
        
        If i = 3 Then
            GoTo END_SECTION
        End If
        
        
        Cells(i, 1).Value = i

END_SECTION:
    
    Next i

適当なボタンを用意して、実際にforの途中で先頭に戻るソースコードを記述します。

ソースコード

Option Explicit

Private Sub CommandButton1_Click()

    Dim i As Long
      
    For i = 1 To 10
        
        If i = 3 Then
            GoTo END_SECTION
        End If
        
        
        Cells(i, 1).Value = i

END_SECTION:
    
    Next i


End Sub

ボタンをクリックすると、値がiの値が3の場合だけ先頭に戻って後続の処理が実行されていることが確認できます。