Live-Forum - Die aktuellen Beiträge
Datum
Titel
03.10.2025 22:18:19
03.10.2025 18:57:58
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Kontextmenü Rightclick deaktivieren

Kontextmenü Rightclick deaktivieren
13.12.2005 16:59:42
mazarata
Hallo Profis
Ich möchte aus Worksheet_BeforeRightClick ein UserForm aufrufen. Dabei kommt mir aber in die quere, dass das Standardkontextmenü von Excel erscheint, wenn im Worksheet die rechte Maustaste geklickt wird. Wie kann man dieses Menü deaktivieren? Ich habe eine Beispieldatei erstellt:
https://www.herber.de/bbs/user/29213.xls
Vielen Dank
mazarata
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kontextmenü Rightclick deaktivieren
13.12.2005 17:05:02
Peter
Servus,
Cancel = True einfügen.
MfG Peter
AW: Kontextmenü Rightclick deaktivieren
13.12.2005 17:07:00
Herbert
Hi,

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
UserForm1.Show
End Sub

mfg herbert
Einfach genial
13.12.2005 17:10:39
mazarata
Besten Dank an Euch alle. Klappt prima.
Gruss
mazarata
Anzeige
Danke für die Rückmeldung OT:-)
14.12.2005 07:14:32
Werner
AW: Kontextmenü Rightclick deaktivieren
13.12.2005 17:07:12
Werner
Hallo

Sub KONTEXT_AUS()
Application.CommandBars("Cell").Enabled = False
End Sub


Sub KONTEXT_EIN()
Application.CommandBars("Cell").Enabled = True
End Sub

Gruss Werner
;
Anzeige
Anzeige

Infobox / Tutorial

Kontextmenü der rechten Maustaste in Excel deaktivieren


Schritt-für-Schritt-Anleitung

Um das Kontextmenü der rechten Maustaste in Excel zu deaktivieren und stattdessen ein UserForm anzuzeigen, gehe wie folgt vor:

  1. Öffne die Excel-Datei, in der Du das Kontextmenü deaktivieren möchtest.
  2. Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
  3. Suche im Projekt-Explorer das entsprechende Arbeitsblatt (Sheet), in dem Du die Änderung vornehmen möchtest.
  4. Doppelklicke auf das Arbeitsblatt, um das Codefenster zu öffnen.
  5. Füge den folgenden Code ein:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    UserForm1.Show
End Sub
  1. Schließe den VBA-Editor und teste die rechte Maustaste in Deinem Arbeitsblatt.

Mit dieser Methode wird das Standard-Kontextmenü von Excel deaktiviert und stattdessen erscheint das UserForm.


Häufige Fehler und Lösungen

  • Fehler: Das UserForm wird nicht angezeigt.
    Lösung: Stelle sicher, dass das UserForm korrekt erstellt und benannt wurde. Der Name im Code muss mit dem Namen des UserForms übereinstimmen.

  • Fehler: Das Kontextmenü wird weiterhin angezeigt.
    Lösung: Überprüfe, ob der Code im richtigen Arbeitsblatt eingefügt wurde. Der Code muss in das Codefenster des spezifischen Arbeitsblatts eingefügt werden.


Alternative Methoden

Wenn Du das Kontextmenü der rechten Maustaste auf andere Weise deaktivieren möchtest, kannst Du diese Methoden verwenden:

  1. Deaktivieren des Kontextmenüs für Zellenauswahl:
Sub KONTEXT_AUS()
    Application.CommandBars("Cell").Enabled = False
End Sub
  1. Aktivieren des Kontextmenüs:
Sub KONTEXT_EIN()
    Application.CommandBars("Cell").Enabled = True
End Sub

Diese Methoden bieten eine flexiblere Kontrolle über das Excel Kontextmenü und können auch in anderen VBA-Projekten verwendet werden.


Praktische Beispiele

Angenommen, Du möchtest das Kontextmenü nur für bestimmte Zellen deaktivieren. Du kannst den Code wie folgt anpassen:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Me.Range("A1:B10")) Is Nothing Then
        Cancel = True
        UserForm1.Show
    End If
End Sub

Hier wird das Kontextmenü nur deaktiviert, wenn Du mit der rechten Maustaste auf die Zellen A1 bis B10 klickst.


Tipps für Profis

  • Nutze die Worksheet_BeforeRightClick-Ereignisprozedur, um benutzerdefinierte Funktionen oder Formulare anzuzeigen, die für Deine speziellen Anforderungen geeignet sind.
  • Teste verschiedene Bedingungen innerhalb des BeforeRightClick-Ereignisses, um das Benutzererlebnis weiter zu optimieren.
  • Halte Deine VBA-Projekte gut dokumentiert, um zukünftige Änderungen zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich das Kontextmenü für alle Arbeitsblätter deaktivieren?
Du musst den Code in jedes Arbeitsblatt einfügen oder eine globale Lösung in der ThisWorkbook-Modul verwenden.

2. Funktioniert diese Methode in allen Excel-Versionen?
Ja, die Methode ist in den meisten Excel-Versionen ab 2003 verfügbar, solange VBA unterstützt wird.

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