- 締切済み
《VBA》セルをダブルクリックしたときのイベント
Worksheet/BeforeDoubleClickを使用して、 フォームを表示するという処理を行っています。 エクセルのセルにリストボックスが設定されているセルがあるのですが、 リストボックスのセルをダブルクリックした時にはイベントが動作しません。 通常のセルをダブルクリックした時にはイベントは正常に動作します。 リストボックスが設定されているセルでは動作することができないのでしょうか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- queuerev2
- ベストアンサー率78% (96/122)
こちらで試した限りでは、ちゃんとイベントが動作しました。 環境は、Windows XP, Excel 2003で、 リストボックスは、フォームのものとコントロールツールボックスのものの両方についてやってみました。 リストボックスにはVBAは設定しておらず(つまりフォームのものにはマクロを登録せず、コントロールツールボックスのものはコードを入力しておらず)、1列3行のセル範囲の値をリストボックス内に表示し、それをクリックするとリンクしているセルに結果が表示されるだけとしました。 起動するイベントのコードはこれだけです。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Range("a1").Value = Range("a1").Value + 1 'イベント発生回数を数える UserForm1.Show 'これは空のフォーム End Sub リストボックスの中に表示するデータが入っているセルや結果がリンクしているセルを含めて、どこのセルでもちゃんとダブルクリックすれば上記のコードが実行されました。 上記のコードが実行されなかったのは、デザインモードに入っている時や、セルがリストボックスにほとんど隠れてしまってうまくダブルクリックできなかった時くらいです。 質問者様の状況をもう少し詳しくお聞きすることができれば何か回答できるかもしれませんので、さらなる回答をご希望であれば補足をお願い致します。 (特に、「設定されている」というのが具体的に理解できずにおります)