Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Format Object bzw. Object Multiselection oder Group Select ContextMenu erweitern
#1
Hallöchen,

ich wollte per Makro das Kontextmenü erweitern, welches beim Anklicken mehrerer Objekte (z.B. TextBoxen) oder von Gruppierungen erscheint.

Ich nutze auf der Suche nach den Menünamen ein Makro - siehe unten, welches mir in die Kontextmenüs den Namen selbiger einträgt. Das funktioniert auch - meist, denn leider kommt das im gesuchten Menü nicht an Sad

Ich hab verschiedene Gedanken gehabt und am nahe liegendsten vermutet, dass es sich dabei um das Format Object - Menü handelt.

Das bringt mir aber den Fehler
Laufzeitfehler -2147467259 (800004005)
Die Methode 'Add' für das Ojekt 'CommandBarControls' ist fehlgeschlagen
(Der Code ist ok, bei anderen Kontextmenüs klappt es)

Hat da jemand eine Lösung? (und wenn ja, welche?  :17:  )

Hier der Code für die Menünamen:

Code:
Sub Add_Name_To_Contextmenus()
   Dim Cbar As CommandBar
   For Each Cbar In Application.CommandBars
       With Cbar
           If .Type = msoBarTypePopup Then
               On Error Resume Next
               With .Controls.Add(Type:=msoControlButton)
                   .Caption = "Name for VBA = " & Cbar.Name
                   .Tag = "NameButtonInContextMenu"
               End With
               On Error GoTo 0
           End If
       End With
   Next
End Sub

Sub Delete_Name_From_Contextmenus()
   Dim Cbar As CommandBar
   Dim ctrl As CommandBarControl
   For Each Cbar In Application.CommandBars
       With Cbar
           If .Type = msoBarTypePopup Then
               For Each ctrl In .Controls
                   If ctrl.Tag = "NameButtonInContextMenu" Then
                       ctrl.Delete
                   End If
               Next ctrl
           End If
       End With
   Next
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#2
gelöscht.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste