Thread: NewMenu
View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Bob Phillips[_6_] Bob Phillips[_6_] is offline
external usenet poster
 
Posts: 11,272
Default NewMenu

You are on a worksheet?

The menu bar does have a Help men u?

--

HTH

Bob Phillips
... looking out across Poole Harbour to the Purbecks
(remove nothere from the email address if mailing direct)

"jrh" wrote in message
...
I used the code from the book Power Programming by Walkenbach to make a

new menu upon opening a certain workbook. However, I get the following
error message "Run Time Error '91'. Object variable or With block variable
not set" and it highlights the line of code that is "Set HelpMenu =
CommandBars(1).FindControl(ID:=30010)".

Can you help? Here is the code:

Sub CreateMenu()
Dim NewMenu As CommandBarPopup

' Delete the menu if it already exists
Call DeleteMenu

' Find the Help Menu
Set HelpMenu = CommandBars(1).FindControl(ID:=30010)

If HelpMenu Is Nothing Then
' Add the menu to the end
Set NewMenu = CommandBars(1).Controls.Add _
(Type:=msoControlPopup, _
temporary:=True)
Else
' Add the menu before Help
Set NewMenu = CommandBars(1).Controls.Add _
(Type:=msoControlPopup, _
Befo=HelpMenu.Index, _
temporary:=True)
End If

' Add a caption for the menu
NewMenu.Caption = "&Budgeting"

' FIRST MENU ITEM
Set MenuItem = NewMenu.Controls.Add _
(Type:=msoControlButton)
With MenuItem
.Caption = "&Data Entry..."
.FaceId = 162
.OnAction = "Macro1"
End With

' SECOND MENU ITEM
Set MenuItem = NewMenu.Controls.Add _
(Type:=msoControlButton)
With MenuItem
.Caption = "&Generate Reports..."
.FaceId = 590
.OnAction = "Macro2"
End With

' THIRD MENU ITEM
Set MenuItem = NewMenu.Controls.Add _
(Type:=msoControlPopup)
With MenuItem
.Caption = "View &Charts"
.BeginGroup = True
End With

' FIRST SUBMENU ITEM
Set SubMenuItem = MenuItem.Controls.Add _
(Type:=msoControlButton)
With SubMenuItem
.Caption = "Monthly &Variance"
.FaceId = 420
.OnAction = "Macro3"
End With

' SECOND SUBMENU ITEM
Set SubMenuItem = MenuItem.Controls.Add _
(Type:=msoControlButton)
With SubMenuItem
.Caption = "Year-To-Date &Summary"
.FaceId = 422
.OnAction = "Macro4"
End With

End Sub