Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: BeforeDoubleClick nur auf einen bestimten bereich

BeforeDoubleClick nur auf einen bestimten bereich
26.10.2004 19:26:35
Bachner
Hallo ich bin wieder da.
Wie kann ich die untere aktion auf einen bestimten bereich begrentzen,
zb: 24z x 10s.?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Bereich 24z x 10s
24z x 10seilen dank Gerhard
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: BeforeDoubleClick nur auf einen bestimten bereich
26.10.2004 19:34:27
Josef
Hallo Gerhard!
ZB. so.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, [A1:J24]) Is Nothing Then
Cancel = True
MsgBox "Im Bereich!"
End If
End Sub

Gruß Sepp
AW: BeforeDoubleClick nur auf einen bestimten bereich
26.10.2004 19:59:31
Bachner
Hallo das funktioniert.
Vielen dank Gerhard
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel VBA: BeforeDoubleClick auf einen bestimmten Bereich beschränken


Schritt-für-Schritt-Anleitung

Um die Aktion des Doppelklicks in Excel VBA auf einen bestimmten Bereich zu beschränken, kannst du den folgenden Code verwenden. Dieser Code sollte in das entsprechende Arbeitsblattmodul eingefügt werden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Suche im Projekt-Explorer das Arbeitsblatt, für das du den Doppelklick beschränken möchtest.
  3. Klicke mit der rechten Maustaste auf das Arbeitsblatt und wähle "Code anzeigen".
  4. Füge den folgenden Code in das Codefenster ein:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, [A1:J24]) Is Nothing Then
        Cancel = True
        MsgBox "Im Bereich!"
    End If
End Sub
  1. Schließe den VBA-Editor und teste die Funktionalität im Arbeitsblatt.

Mit diesem Code wird die Doppelklick-Aktion nur im Bereich von A1 bis J24 ausgelöst. In diesem Fall wird eine Nachricht angezeigt, und der Doppelklick wird abgebrochen.


Häufige Fehler und Lösungen

  • Fehler: Der Doppelklick funktioniert nicht.

    • Überprüfe, ob du den Code im richtigen Arbeitsblattmodul eingefügt hast. Der Code muss in das Modul des spezifischen Arbeitsblatts eingefügt werden, nicht in ein allgemeines Modul.
  • Fehler: Die Nachricht wird nicht angezeigt.

    • Stelle sicher, dass der Doppelklick tatsächlich im angegebenen Bereich (A1:J24) erfolgt. Wenn du außerhalb dieses Bereichs doppelklickst, wird die Nachricht nicht angezeigt.

Alternative Methoden

Eine alternative Methode, um die Doppelklick-Aktion zu steuern, ist die Verwendung des Worksheet_BeforeRightClick-Ereignisses. Hier ist ein Beispiel, wie du dies umsetzen kannst:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, [A1:J24]) Is Nothing Then
        Cancel = True
        MsgBox "Rechtsklick im Bereich!"
    End If
End Sub

Diese Methode ermöglicht es dir, die Rechtsklick-Aktion ebenfalls auf einen bestimmten Bereich zu beschränken.


Praktische Beispiele

Ein weiteres Beispiel für die Verwendung von BeforeDoubleClick könnte sein, die Zellen im angegebenen Bereich zu formatieren oder Daten zu validieren. Hier ein einfaches Beispiel, das die Hintergrundfarbe der Zelle ändert:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, [A1:J24]) Is Nothing Then
        Cancel = True
        Target.Interior.Color = RGB(255, 255, 0) ' Gelbe Hintergrundfarbe
    End If
End Sub

In diesem Beispiel wird die Hintergrundfarbe der doppelgeklickten Zelle im Bereich A1:J24 gelb, wenn du darauf doppelklickst.


Tipps für Profis

  • Verwendung von Konstanten: Um den Code flexibler zu gestalten, kannst du den Bereich in einer Konstante definieren. So kannst du den Bereich einfacher ändern, falls nötig.
Const Bereich As String = "A1:J24"
  • Mehrere Bereiche: Du kannst auch mehrere Bereiche definieren, indem du die Intersect-Funktion mehrfach verwendest oder die Bereiche in einer Schleife überprüfst.

FAQ: Häufige Fragen

1. Wie kann ich die Doppelklick-Aktion für mehrere Bereiche definieren? Um mehrere Bereiche zu definieren, kannst du die Intersect-Funktion so anpassen, dass sie mehrere Bereiche überprüft. Beispiel:

If Not Intersect(Target, Union([A1:J24], [L1:L24])) Is Nothing Then

2. Was passiert, wenn ich den Code nicht im richtigen Modul einfüge? Der Code wird nicht ausgeführt, wenn er nicht im spezifischen Arbeitsblattmodul eingefügt wird. Stelle sicher, dass du den richtigen Ort wählst, um die Funktionalität zu aktivieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige