- 締切済み
VBA EnableEventsの動作
Win7 Excel2013使用 Application.EnableEventsの動作でおかしな事がおきているので 解決方法を教えて頂きたいのですが、 シートの並びかえマクロを作成し、 その中で最初と最後にApplication.EnableEventsとscreenupdating を false→処理→trueで設定しています。 マクロ実行後、別のマクロ(sheetchangeイベント)を実行しようとしたところ マクロ動作せず、状況を調べるために sub test() msgbox Application.EnableEvents msgbox Application.ScreenUpdating End sub 上記testマクロでそれぞれの状況を表示させたところ、どちらもtrueがかえってきました。 ただ、もう一度このtestマクロを実行するとApplication.EnableEventsだけfalseとなります。 シートの並びかえマクロのデバッグで検証を行いましたが、特にエラーはなく、最後のtrueまで 実行される事は確認しました。 何か考えられることはありますでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
msgbox Application.EnableEvents msgbox Application.ScreenUpdating の2つを msgbox "EnableEvents = " & Application.EnableEvents msgbox "ScreenUpdating = " & Application.ScreenUpdating に変えて、もう一度試してみましょう。 ただ単に「True」とか「False」としか表示してないので「何か、別のMsgBoxの表示と勘違いしている」可能性があります。 なので「何がTrue/Falseなのか」をちゃんと表示してデバッグしましょう。
お礼
スミマセン。 質問の件、当方のコードに誤りがあることを発見しました。 自己解決することができました。 ありがとうございました。
補足
早速の回答ありがとうございます。 ご指摘の内容を試してみましたが、 やはりEnableEvents が False となります…