Googleで答えを見つけることができなかった簡単な質問:
Excel 2010 VBA で実行時エラーが発生したときに表示されるポップアップに [デバッグ] ボタンを表示するにはどうすればよいですか? 昔は見たのですが、今は見当たりません。
これは構成の問題ですか?
VBA でエラー処理を使用している場合On Error Goto xxx
、[デバッグ/停止] ダイアログは表示されません。これは設計によるもので、独自の処理ルーチンを提供する必要があるためです。
On Error Resume Next
これは、エラーが完全に無視されることを除いて、 を使用している場合にも当てはまります。
設定を使用するOn Error Goto 0
と (既定の設定。上記のいずれの設定も指定しないのと同じ)、エラーが発生したときにダイアログ ボックスが表示されます。
VB エディタで、ツール\オプションに移動します。[全般] タブ、[エラー トラップ] セクション、[すべてのエラーで中断] に切り替えます。
コードのデバッグを検討している場合は、「Microsoft Visual Basic forApplications」からデバッグできます。Alt+F11ショートカットを使用してExcelからコードを開くことができます。
メソッドをイミディエイトウィンドウから直接実行すると、時々発生します。
VBA エディタでデバッグ オプションを表示するには、一部の行でコードを分割する必要があり、イミディエイトウィンドウの行でエラーが発生した場合は不可能です。
例:
以下のコードをイミディエイトウィンドウで直接実行すると、次のようになります。
MsgBox 1 / 0
エディターに次のウィンドウが表示されます。
ただし、このコード行をメソッドにラップすると:
Sub test
MsgBox 1 / 0
End Sub
そのようにイミディエイトウィンドウから呼び出します:
Call test
エディターは同じ操作のためにエラーを発生させますが、実行時エラー ウィンドウは次のようになります。