HERBERS Excel-Forum - die Beispiele

Thema: Bei Doppelklick Kontext-Menü mit Listeneinträgen anzeigen

Home

Gruppe

Ereignis

Problem

Wie kann ich mir bei Doppelklick auf eine Zelle ein Kontextmenü mit Einträgen aus einer Liste einer zweiten Tabelle anzeigen lassen? Das ausgewählte Element soll in die Zelle eingetragen und die Anzahl der in einer Zeile vorhandenen Elemente soll in der zweiten Tabelle gezählt werden.

Lösung
Geben Sie den Ereigniscode in das Klassenmodul des Arbeitsblattes ein.
ClassModule: DieseArbeitsmappe

Private Sub Workbook_BeforeClose(Cancel As Boolean)
   Call DeleteCmdBar
End Sub

ClassModule: Tabelle1

Private Sub Worksheet_BeforeDoubleClick( _
   ByVal Target As Excel.Range, Cancel As Boolean)
   Dim oBar As CommandBar
   Dim oBtn As CommandBarButton
   Dim wks As Worksheet
   Dim iCol As Integer
   Cancel = True
   Set wks = Worksheets("Daten")
   Call DeleteCmdBar
   Set oBar = Application.CommandBars.Add( _
      Name:="StringInsert", _
      Position:=msoBarPopup, _
      MenuBar:=False, _
      temporary:=True)
   iCol = 1
   Do Until IsEmpty(wks.Cells(1, iCol))
      Set oBtn = oBar.Controls.Add
      With oBtn
         .Caption = wks.Cells(1, iCol).Value
         .Style = msoButtonCaption
         .OnAction = "GetValue"
      End With
      iCol = iCol + 1
   Loop
   CommandBars("StringInsert").ShowPopup
End Sub

StandardModule: basMain

Sub GetValue()
   ActiveCell.Value = _
      Application.CommandBars("StringInsert") _
      .Controls(Application.Caller(1)).Caption
End Sub

Sub DeleteCmdBar()
   On Error Resume Next
   Application.CommandBars("StringInsert").Delete
   On Error GoTo 0
End Sub

Beiträge aus dem Excel-Forum zu den Themen Ereignis und BeforeDoubleClick

Msg mit 2 Ereignissen +Cancel Ereignisprozedur
Makro für ereignisabh. Druck verschiedener Seiten UF Activate / Initialize Ereignis
Namen definiert- in Ereignis verwenden? Zeilen aus- einblenden als Ereignis?
Welches Ereignis ist das richtige ?? Ereignis Arbeitsblatt sperren abfangen
Ereignisprozedur f. Multipage-Reiter Frage zum Change ereignis
Change-Ereignis in Combobox unterdrücken Combobox Ereignis
Userform, Ereignis deklarieren im Klassenmodul Welches Diagramm-Ereignis?
Bestimmtes Ereignis in Spalte zählen Command Button Ereignis
Ereignis von Laufzeit-Checkbox change-ereignis bei dynamischen Controls / Teil 2
Change Ereignis verhindern change-ereignis bei dynamisch erstellten Controls
Schaltfläche - Ereignis erst nach Bestätigung ausl Worksheet_BeforeDoubleClick
Objekt_Error - Ereignis in UserForm change ereigniss auf userform.
Click-Ereignis für Checlbox nicht ausführen? Speichern einer Kopie durch Ereigniss Workbook_bef
Reagieren auf Tastaturereignisse Ausnahmen für Exit-Ereignis
Worksheet_BeforeDoubleClick Exit-Ereignis SetFocus
select Ereigniss UF Show Ereignis zeitweise mit Fehler
Ereignismakro Worksheet_BeforeDoubleClick
Selectereigniss in Spalte doppeltes Klick-Ereignis
Doppelklick-Ereignis VBA Ereignis: Änderung der Hintergrundfarbe
Ereigniscode aus zwei Teilen fnk. nicht Exit Ereignis einer Textbox im Frame
Change-Ereignis bei Auswahllisten Worksheet_Change Ereignis erweitern
Exit Ereignis springt nicht an Exit-Ereignis
Ereignis "BeforeSave" - ".Find" geht nic change ereigniss nicht ausführen Userform
Exit Ereignis Rekursiven Aufruf von Ereignissen verhindern
Makro läuft nicht, falsches Ereignis? Dropdown Ereignis