VBAもプログラムなので、式が複雑になればなるほどデバッグの連続となります。デバッグそのものはさまざまな原因があるのでここで一概に言えませんが、とりあえず文字が黄色くなっちゃった状態の解除方法をここでは解説しています。
実行時エラーの解除方法
今回は例として、autofilterメソッドを用います。こんな感じの式を用意して……。
マクロを実行してみます。
構文エラーになりました。
OKを押すと、どうもこのへんが怪しいというところが赤くなり、Sub Macro1()が黄色く塗り潰されました。このどこかの文字が黄色く塗り潰された状態が中断モードです。
構文については、列番号の後ろの,を付け忘れていたことが原因のようです。
しかし上書き保存をしても、マクロを実行しようとすると中断モードではできない旨ダイアログが出ます。
中断モードを終了するには、上にあるリセットボタンを押します。
ボタンを押すと黄色い塗り潰しが解除されました。
これでマクロが実行可能になりました。
今度は、列番号をまるごと削除して実行してみます。
実行時エラーになりました。
構文エラーに比べると実行時エラーはどこが原因かはっきりしているようです。「終了」を押すと中断モードにならずダイアログが閉じ、「デバッグ」を押すとこのように疑わしい行が黄色く塗り潰されます。
式を修正し、リセットボタンを押します。これで再度マクロが実行可能になりました。
中断モードの解除方法については以上です。
やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
コメント