- 締切済み
アクセスのデバッグ方法
VBAのコードにブレークポイントを設定しても、コードを実行すると、止まってくれないです。原因は何なのですか。 ご教授をお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- bonaron
- ベストアンサー率64% (482/745)
「起動時の設定」で 「ショートカットキーを有効にする」のチェックがオフの場合に ブレークポイントで止まらないことが確認できました。
- KenKen_SP
- ベストアンサー率62% (785/1258)
こんにちは。 そのブレークポイントを設けたライン(行)が実行されていないから でしょう^^; 例えば、 A = 5 IF A < 3 Then MsgBox A ' // <--- ブレークポイント End If は絶対に止まりませんよね? こんな単純ではないと思いますが、必ず実行されるラインにブレーク ポイントを設けた場合は必ず停止しますよ。 If~Then、Select Case などの制御コマンドの前後、あるいは Exit For、 Exit Do、Exit Sub、Goto、On Error ~ など処理フローを突然変更 してしまうコマンドの前後が要注意です。 確認方法としては、例えば、もっと確実に実行されるであろうライン にブレークポイントを設けます。 例えば、 Sub Main() Call SampleProc End Sub Sub SampleProc() ' <---- ココとか 処理 End Sub ' // イベントプロシージャなら Private Sub CommandButton1_Click() ' <---- ココとか 処理 End Sub 停止した後は、F8 キーでステップ実行して、問題のラインが 実行されるのかどうかを確認します。
補足
KenKen_SPさん、 こんにちは。 ご回答をありがとうございます。 ブレークポイントを設定した場所は関数の一行目です。ちなみに、ブレークポイントを設定されたところに、メッセージボックス関数を追加すると、ちゃんと表示されました。なので、ブレークポイントが設定された部分は必ず実行されました。ただ、止まってくれませんでした。原因はよく分かりません。
お礼
bonaronさん、 ご回答をありがとうございます。 返信を遅くなって、申し訳ございませんでした。 おっしゃったとおりに、うまく行きました。 これからも宜しくお願いいたします。