← コード一覧へ戻る
基本エラー対策

Stop文でマクロを一時停止する

Stopの位置で実行を中断し、変数の値を確かめてから続行します。

実行前に確認

  • Stopはエラーではなく、調査のための一時停止です。Endのように変数を初期化する終了処理ではありません。
  • 練習後や配布前はStopの行を削除します。残したままでは毎回その場所で止まります。
  • Excel実機での動作は未確認です。コピーした練習用ブックで試してください。

1サンプルコード

Option Explicit

Sub Example7054()
    Dim total As Long

    total = 100 + 200
    Stop
    total = total + 50
    MsgBox "合計: " & total
End Sub

図で見る300で止めてから350まで続行する

イメージ図

Stopによる中断中に、totalの値を確認します。

  1. totalを300にする

    100 + 200を計算してtotalへ代入

  2. Stopで一時停止

    ローカル ウィンドウでtotal = 300を確認し、F5で続行

  3. 50を加えて表示

    totalが350になり、MsgBoxで「合計: 350」を表示

VBEで実行し、中断後にF5で再開する前提です。Stopの行は配布前に削除してください。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    Windows版デスクトップExcelの練習用ブックを.xlsm形式で保存します。Alt+F11でVBEを開き、[挿入]→[標準モジュール]で作った空のモジュールに、Option Explicitから末尾まで、この例だけを貼り付けます。

  2. 2

    VBEの[表示]→[ローカル ウィンドウ]を開きます。シートの準備は不要です。

  3. 3

    Example7054のSub内でF5を押します。StopでVBEが中断したらローカル ウィンドウのtotalを確認し、もう一度F5を押して続行します。

  4. 4

    Stopで停止した時点のtotalは300です。F5で続行すると「合計: 350」と表示されます。

使っている機能の公式ドキュメント(Microsoft Learn)