Worksheet_BeforeDoubleClick wird nicht aufgerufen

Hallo,

ich habe eine Sub geschrieben, die bei Doppelklick auf die Zelle „A1“ ausgeführt werden soll (Ich benutze Excel 2003):

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range(„A1“)) Is Nothing Then
Exit Sub
End If
Cancel = True
MsgBox(„Doppelklick!“)
End Sub

Es wird aber nur die Zelle „A1“ zum Bearbeiten aufgemacht.
Was mache ich falsch?

Danke schon mal im Voraus
Ben

ich habe eine Sub geschrieben, die bei Doppelklick auf die
Zelle „A1“ ausgeführt werden soll (Ich benutze Excel 2003):

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range,
Cancel As Boolean)
If Intersect(Target, Range(„A1“)) Is Nothing Then
Exit Sub
End If
Cancel = True
MsgBox(„Doppelklick!“)
End Sub

Es wird aber nur die Zelle „A1“ zum Bearbeiten aufgemacht.
Was mache ich falsch?

Ist der Ereignis-Handler aktiv?
Application.EnableEvents=True

Ja, den habe ich zur Sicherheit mal in der Auto_Start gesetzt, aber es funktioniert trotzdem nicht…

Gruß
Ben

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Geht er gar nicht in die Routine rein oder bringt er nur die MsgBox nicht?
Wenn du eine STOP-Anweisung am Anfang reinmachst, muss auf jeden Fall der Debugger aufgehen bei Doppelklick.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range,
Cancel As Boolean)
Stop
If Intersect(Target, Range(„A1“)) Is Nothing Then

In der VBA-Doku steht ausserdem noch:
Dieses Ereignis tritt nicht ein, wenn der Benutzer auf den Rahmen einer Zelle doppelklickt.

Ist der Ereignis-Handler aktiv?
Application.EnableEvents=True

Ja, den habe ich zur Sicherheit mal in der Auto_Start gesetzt,
aber es funktioniert trotzdem nicht…

Hi Ben,

Auto_Open, Auto_Close benutze ich nicht. Auto_Start ist mir neu, naja, dann gibt es das halt auch.
Wie auch immer, wenn du eine Excel-Mappe öffnest ist Application.EnableEvents automatisch auf True gesetzt.
Es sei denn du hast in Workbook_Open oder halt in Auto_Open Code drinnen der anfangs Application.EnableEvents auf False setzt, dann irgednwas macht und dann wieder auf True setzen sollte.
Wenn er allerdings nicht durchläuft und du den Code dann manuell beendest, so ist Application.EnableEvents halt immer noch auf false.

Wenn es das nicht ist, laß trotzdem mal dieses Makro laufen

sub tt()
Application.EnableEvents=true
end sub

Dann doppelklicke mal auf A1, wenn dann da keine MsgBox kommt müssen wir weiter schauen.

Steht denn der Code für das Doubleclick ereignis auch da wo er hingehört, also in dem Dokumentmodul des Blattes wo du auf A1 doppelklickst?

Ist garantiert daß die Mappe mit aktivierten Makros geöffnet wurde?

Wenn das alles dich nicht weiterbringt müßen wir wohl doch mal vom Amtsarzt deine Doppelklickgeschwindigkeit überprüfen :smile:
Im Ernst, dann fällt mir erstmal dazu nix mehr ein.

An deinem gezeigten Code liegt es nicht, der funktioniert.

Gruß
reinhard

Hallo Reinhard,

Sorry für die späte Erfolgsmeldung. Ich hatte Urlaub! Man stelle sich das mal vor *lach*
Es funktioniert jetzt: Ursache war, dass der Code nicht in dem Code für das Tabellenblatt stand. Kaum macht man’s richtig, schon funktionierts!

Vielen Dank nochmal

Gruß
Ben

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]