View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Dave Peterson Dave Peterson is offline
external usenet poster
 
Posts: 35,218
Default How to pimp my custom menu (want to display FaceIds and shortcutscombo)?

How about...

Set cbctl = cbpop.Controls.Add(Type:=msoControlButton)
With cbctl
.Visible = True
.Style = msoButtonIconAndCaption
.Caption = "&Update rapport"
.ShortcutText = "Ctrl-M"
.OnAction = "UpdateRapport"
.FaceId = 2817
End With

Application.MacroOptions Macro:="UpdateRapport", _
HasShortcutKey:=True, ShortcutKey:="M"

s80NL wrote:

I've got the following code for a custom menu and it's working fine BUT
how can I add FaceIds to the menu items? Is it also possible to show
the custom shortcuts like they are showed in the default menu's (e.g.
Ctrl+S for _S_ave in menu _F_ile?

Formula:
--------------------
'
' Macro found @ www.romanpress.com/Articles/Menus_R/Menus.htm
' Made some minor adjustments only
'
Private Sub AddMenu()
Dim cbpop As CommandBarControl
Dim cbctl As CommandBarControl
Dim cbsub As CommandBarControl
Dim cbpos As Integer

On Error Resume Next
Application.CommandBars("Worksheet Menu Bar").Controls("Custom Menu").Delete
On Error GoTo 0

' Create a popup control on the main menu bar
cbpos = Application.CommandBars("Worksheet Menu Bar").Controls("Help").Index

Set cbpop = Application.CommandBars("Worksheet Menu Bar"). _
Controls.Add(Type:=msoControlPopup, Befo=cbpos)
cbpop.Caption = mname
cbpop.Visible = True

' Add menu item
Set cbctl = cbpop.Controls.Add(Type:=msoControlButton)
cbctl.Visible = True
cbctl.Style = msoButtonCaption
cbctl.Caption = "&Update rapport"
cbctl.OnAction = "UpdateRapport"

' Add menu item
Set cbctl = cbpop.Controls.Add(Type:=msoControlButton)
cbctl.Visible = True
cbctl.Style = msoButtonCaption
cbctl.Caption = "&Print all sheets"
cbctl.OnAction = "PrintAllSheets"

' Add a popup for a submenu
Set cbsub = cbpop.Controls.Add(Type:=msoControlPopup)
cbsub.Visible = True
cbsub.Caption = "Rapport op&slaan als..."
' Add submenu item
Set cbctl = cbsub.Controls.Add(Type:=msoControlButton)
cbctl.Visible = True
cbctl.Style = msoButtonCaption
cbctl.Caption = "Save As (Preformatted)"
cbctl.OnAction = "SaveAs"
' Add submenu item
Set cbctl = cbsub.Controls.Add(Type:=msoControlButton)
cbctl.Visible = True
cbctl.Style = msoButtonCaption
cbctl.Caption = "Save Copy As (Preformatted)"
cbctl.OnAction = "SaveCopyAs"
End Sub
--------------------

--
s80NL

------------------------------------------------------------------------
s80NL's Profile: http://www.excelforum.com/member.php...o&userid=36374
View this thread: http://www.excelforum.com/showthread...hreadid=561781


--

Dave Peterson