Excel VBAの実行を一時停止させる-Stop

Excel VBAを書き込んでいる途中や、エラーの原因究明のために「ここまでで処理を一時停止させたいな」という時の方法を記録します。

実行を一時停止させるには「Stop」ステートメントを使います。

< スポンサーリンク >





「Stop」構文

Stop

実行を一時停止します。

プロシージャの任意の場所にStopステートメントを書き込んでおくと、そこで実行を中断できます。

Stopステートメントは、コード内にブレークポイントを設定することと似ています。

Stopステートメントは、実行を中断しますが、Endとは異なり、ファイルを閉じたり変数を解除することはありません(コンパイルされた実行可能ファイル(.exe)に含まれている場合を除く)。

 

VBAを一時停止させる例

下図のようにVBAに「1~5をイミディエイトウィンドウに出力する」と書いているものを実行すると最後まで実行してくれます。

Sub test()
  Dim i As Byte

  For i = 1 To 5
    Debug.Print i
  Next i
End Sub

ExcelVBAStop

 

途中、「3になったら中断させたいな」と思ったときは下記のように書きます。

Sub test()
  Dim i As Byte

  For i = 1 To 5
    Debug.Print i

    If i = 3 Then
      Stop
    End If
  Next i
End Sub

ExcelVBAStop

 

実行すると、Stopの位置で一時停止します。

ExcelVBAStop

 

中断を解除したい場合は、[リセット]ボタンを押します。

ExcelVBAStop

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします