プロが教えるわが家の防犯対策術!

Excel VBAでダブルクリックしたときに処理をしたいのですがうまくいきません。

対象のワークシートに次のコードを記述して、そのワークシート内のセルをダブルクリックしていますが無反応です。何のコードも実行されません。なぜでしょうか。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
MsgBox "Range= " & Target
End Sub

Windows 7 Pro 64bit, Excel 2007

別のブックでも試しましたが同じく無反応です。。。
シートのコードの一番上に
Application.EnableEvents = True
とも書いてみましたがダメです。

A 回答 (1件)

>シートのコードの一番上に Application.EnableEvents = True とも書いてみましたがダメです。


シートのコードの一番上とはWorksheet_BeforeDoubleClickのことでしょうか。

その時点で、Application.EnableEvents = False の状態なら、それらのイベントに入りません、


Sub Rinji()
  Application.EnableEvents = True
End Sub

と書いて、このプロシージャを実行してみるとどうでしょうか。この後、シートでダブルクリックしてみてください。

この回答への補足

わかりました!
イベント処理中のコードでエラーが発生してそのままプログラムを終了した場合に起きるんだと思います。
イベント処理中にはほかのイベントが発生しないようにオフにするんだと思います!

地味だけど役立つ知識です。

補足日時:2014/07/09 18:52
    • good
    • 0
この回答へのお礼

ありがとうございます!!!!

そもそもどこでこのイベントが False にされているのかわかりませんが(そんなコード書いてません)やってみたらできました。起動時や要所要所でイベントをオンにするよう念のため記述しておきます。

助かりました!!!!

お礼日時:2014/07/09 17:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A