sironekotoroの日記

Perl で楽をしたい

Excel VBA ベーシック 公式テキスト 10章 デバッグ

10-1 デバッグ

  • 文法エラー
  • 論理エラー

10-2 イミディエイトウィンドウ

  • imidiate : 直接の,直の
  • ?worksheets count -> 3
  • Msgbox = "Hello" -> メッセージボックス“Hello”
  • イミディエイトウィンドウ内ではDimなどで変数宣言するとエラーになる -> 「イミディエイト ペインでは使えません」

10-3 マクロを一時停止する

  • F9キーでブレークポイントを設定。その行は茶色になる。
    • 複数行の設定が可能
    • ただし、Dimなどの変数を宣言する行にはブレークポイントを設定する事は出来ない。
  • F5キーを押すとマクロが実行されるが、ブレークポイントを設定していた場合には、ブレークポイントを設定した行の直前でマクロが一時停止する。
  • 黄色く反転した行は「次に実行される予定の命令」
  • F5キーを押すと、再度マクロが実行される

stopステートメント

  • マクロを一時停止してデバッグモードにする命令
Dim i As Long
  For i = 1 To 3
    If i = 2 Then Stop
    Cells(i, 1) = Worksheets(i).Name
  Next
MsgBox "終了しました"
  • マクロを実行すると、3行目のstopのところでマクロが一時停止し、デバッグモードになる
  • ここでイミディエイトウィンドウに?iと入力しエンターキーを押すと、2とかえってくる
  • Exit Subを利用する事でマクロを強制終了させる事が出来る

ウォッチウィンドウ

  • マクロ実行中に変数やプロパティの内容を監視できる機能
  • ウィンドウ内部を右クリックし「ウォッチ式の追加」ダイアログ内のi=3などの条件を入れる
  • 「ウォッチの種類」で「式がTrueの時に中断」を選択する事でマクロを止める事が出来る

10-4 ステップ実行

  • マクロを1行ずつ実行
  • F8キーを押す