Hallo Leute,
in einem Formular zu einem bestimmten Feld möchte ich ein Kontextmenü verwenden. Soweit so gut, das funkioniert.
'Add Kontextmenü für Kopieren Dim cbr As Office.CommandBar Dim cbc As Office.CommandBarControl On Error Resume Next CommandBars("cbrKopieren").Delete Set cbr = CommandBars.Add("cbrKopieren", msoBarPopup, False, True) Set cbc = cbr.Controls.Add(msoControlButton, , , , True) With cbc .Caption = "Kopieren mit Formatierung" .TooltipText = "Kopiert Feldinhalt mit Formatierungen (Leerzeichen etc.)" .OnAction = "=SetCopy(0)" End With Set cbc = cbr.Controls.Add(msoControlButton, , , , True) With cbc .Caption = "Kopieren ohne Formatierung" .TooltipText = "Kopiert Feldinhalt ohne Formatierungen (Leerzeichen etc.)" .OnAction = "=SetCopy(1)" End With
Nun möchte ich aber auch noch Icons anzeigen. Das mache ich ja über die ID, also
Set cbc = cbr.Controls.Add(msoControlButton,21 , , , True)
Meine Frage ist nun, wie komme ich an eine ID, wenn ich lediglich die imageMSO kenne?
Also ich möchte z. B. folgendes Icon verwenden: imageMso="CopyOrMoveToSection"
Diese imageMso habe ich aus den Ribbon Creator 2010 ausgelesen. Ich könnte auch über die Ribbon gehen, aber das ist mir für diesen Fall einfach zu aufwendig. Daher mein Weg über die VBA-Routine.
Vieleicht hat ja jemand eine Idee, wie das zu bewerkstelligen ist.
Gruß Ahmed