SetMenuItem Method

Microsoft Access Visual Basic

action in Visual Basic.

expression.SetMenuItem(MenuIndex, CommandIndex, SubcommandIndex, Flag)

expression    Required. An expression that returns one of the objects in the Applies To list.

MenuIndex   Required Variant. An integer, counting from 0, that's the valid index of a menu on the custom menu bar or global menu bar for the active window, as defined in the menu bar macro for the custom menu bar or global menu bar. If you select a menu with this argument and leave the commandindex    and subcommandindex arguments blank (or set them to –1), you can enable or disable the menu name itself. You can't, however, check or uncheck a menu name (Microsoft Access ignores the acMenuCheck and acMenuUncheck settings for the flag argument for menu names).

CommandIndex   Optional Variant. An integer, counting from 0, that's the valid index of a command on the menu selected by the menuindex    argument, as defined in the macro group that defines the selected menu for the custom menu bar or global menu bar for the active window.

SubcommandIndex   Optional Variant. An integer, counting from 0, that's the valid index of a subcommand in the submenu selected by the commandindex    argument, as defined in the macro group that defines the selected submenu for the custom menu bar or global menu bar for the active window.

Flag   Optional AcMenuType.

AcMenuType can be one of these AcMenuType constants.
acMenuCheck
acMenuGray

acMenuUncheck

acMenuUngray default

If you leave this argument blank, the default constant
(acMenuUngray) is assumed.

Remarks

For more information on how the action and its arguments work, see the action topic.

Note   The SetMenuItem method works only with custom menu bars and global menu bars created by using menu bar macros. The SetMenuItem method is included in this version of Microsoft Access only for compatibility with versions prior to Microsoft Access 97. It doesn't work with the new command bars functionality. In the current version of Microsoft Access, you must use the properties and methods of the CommandBars collection object to enable or disable top level menu items.

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.

Example

The following example uses the SetMenuItem method to disable the second command in the first menu on the custom menu bar for the active window:

DoCmd.SetMenuItem 0, 1, , acMenuGray