| XL97: Sample Macros for Customizing Menus and SubmenusID: Q159619 
 | 
The process of programmatically changing menus in Microsoft Excel 97 is
different than earlier versions of Microsoft Excel. The biggest change in
Microsoft Excel 97 is that toolbars, menu bars, and shortcut menus are
considered one type of object (called a command bar). Most Visual Basic for
Applications macros that you create in earlier versions of Microsoft Excel
that customize menus and toolbars work in Microsoft Excel 97. However, some
macros may fail. In this case, modify the macro code to work with the new
object type.
This article provides several examples that illustrate how to customize
menu bars, menus, and toolbars in Microsoft Excel 97.
NOTE: In many of the example macros in this article, the ID number for a
particular control is used as an argument for the Add method. You must know
the ID number if you want to restore built-in menus that you deleted.
For additional information, please see the following article in the
Microsoft Knowledge Base:
ARTICLE-ID: Q159466
TITLE : XL97: List of ID Numbers for Built-In Command Bar Controls
Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:
http://www.microsoft.com/support/supportnet/refguide/
   Sub Disable_Menu_Bar()
       CommandBars("Worksheet Menu Bar").Enabled = False
   End Sub 
   Sub Enable_Menu_Bar()
       CommandBars("Worksheet Menu Bar").Enabled = True
   End Sub 
   Sub Delete_Help_Menu()
       CommandBars("Worksheet Menu Bar").Controls("Help").Delete
   End Sub 
   Sub Restore_Help_Menu()
       set x = CommandBars("Worksheet Menu Bar")
       x.Reset
   End Sub 
   Sub Delete_Menu_Item()
       Set x = CommandBars("Worksheet Menu Bar").Controls("Help")
       x.Controls("Contents and Index").Delete
   End Sub 
   Sub Restore_Menu_Item()
       Set x = CommandBars("Worksheet Menu Bar").Controls("Help")
       x.Controls.Add Type:=msoControlButton, Id:=983, before:=2
   End Sub 
   Sub Delete_Submenu()
       Set x = CommandBars("Worksheet Menu Bar").Controls("Help")
       x.Controls("Microsoft on the Web").Delete
   End Sub 
   Sub Restore_Submenu()
       Set x = CommandBars("Worksheet Menu Bar").Controls("Help")
       x.Controls.Add Type:=msoControlPopup, Id:=30222, before:=4
       x.Reset
   End Sub 
   Sub Delete_Item_on_Submenu()
       Set x = CommandBars("Tools").Controls("Protection")
       x.Controls("Protect Sheet...").Delete
   End Sub 
   Sub Restore_Item_on_Submenu()
       Set x = CommandBars("Tools").Controls("Protection")
       x.Controls.Add Type:=msoControlButton, Id:=893, before:=1
   End Sub 
   Sub Delete_Menu_on_Toolbar()
       CommandBars("Drawing").Controls("Draw").Delete
   End Sub 
   Sub Restore_Menu_on_Toolbar()
       Set x = CommandBars("Drawing")
       x.Controls.Add Type:=msoControlPopup, Id:=30013, before:=1
       x.Reset
   End Sub 
   Sub Delete_Shortcut_menu_item()
       CommandBars("Cell").Controls("Insert Comment").Delete
   End Sub 
   Sub Restore_Shortcut_menu_item()
       Set x = CommandBars("cell")
       x.Controls.Add Type:=msoControlButton, Id:=2031, before:=8
       Application.ShortcutMenus(xlWorksheetCell).MenuItems.Add _
           Caption:="-", before:=9
   End Sub For more information about programmatically customizing command bars, click Microsoft Visual Basic Help on the Help menu in the Visual Basic Editor, type "Customizing menus," click Search, and then click "Overview of Command Bars" to go to the topic.
Additional query words: XL97 8.0 8.00 commandbar menubar
Keywords          : kbprg kbualink97 kbdta kbdtacode xlui KbVBA 
Version           : WINDOWS:97
Platform          : WINDOWS 
Issue type        : Last Reviewed: June 18, 1999