Thread
:
menu bar keyboard shortcuts intermittent.
View Single Post
#
3
Posted to microsoft.public.excel.programming
papou
external usenet poster
Posts: 110
menu bar keyboard shortcuts intermittent.
Hi
you would have to use the "reserved" names.
No, you should *always* avoid using reserved names in variables.
Caption and FaceID are not just any variables, they are the representations
that go in the menu bar.
I understand your confusion, but still they ARE variables.
These names (Caption and FaceId) are properties available via VBA.
When they are both used as properties and variables (see your code snippet
below) your code may not work properly.
MenuItem.Caption = Caption
If FaceId < "" Then MenuItem.FaceId = FaceId
HTH
Cordially
Pascal
"windsurferLA" a écrit dans le message de news:
...
I'm not an expert on Menu generating programs, but I would think that you
would have to use the "reserved" names. Caption and FaceID are not just
any variables, they are the representations that go in the menu bar. Am I
wrong?
WindsurferLA
papou wrote:
Hello
I haven't been through all of your code, so this is just a suggestion:
You are using "reserved" names as variables in your code ie:
Caption and FaceId (both existing properties in VBA)
I would recommend you amend these variables names with for example
"ItCaption" and "ItFaceId"
HTH
Cordially
Pascal
"windsurferLA" a écrit dans le message de news:
...
I create a custom menu using the routine shown at the bottom of this
message which was generously created by individual unknown to whom I am
indebted to making my life easier.
When the macro is run, the menu bar shows across the top of the sheet:
File with an underline under the F
Edit with an underline under the E
....
...
...
Actions List with an underline under the L
Prior to my machine crashing and reloading of the operating system,
depressing Alt-L opened the "Actions List" pull down menu. Now I usually
have to press Alt-L followed by "Enter" to get the same operation. The
standard menu items, File, Edit, View, Insert ... continue to open merely
by the appropriate Alt-letter combination.
Earlier today, for an unknown reason, Alt-L was opening the Action-List
pull down menu. This evening it again doesn't work.
WHAT MIGHT BE CHANGING?
Thanks ... WindsurferLA
- - - - - - - -
Sub CreateMenu()
' This sub should be executed when the workbook is opened.
' NOTE: There is no error handling in this subroutine
Dim MenuSheet As Worksheet
Dim MenuObject As CommandBarPopup
Dim MenuItem As Object
Dim SubMenuItem As CommandBarButton
Dim Row As Integer
Dim MenuLevel, nextlevel, PositionOrMacro, Caption, Divider, FaceId
''''''''''''''''''''''''''''''''''''''''''''''' '''''
' Location for menu data
Set MenuSheet = ThisWorkbook.Sheets("MenuSheet")
''''''''''''''''''''''''''''''''''''''''''''''' '''''
' Make sure the menus aren't duplicated
Call DeleteMenu
' Initialize the row counter
Row = 2
' Add the menus, menu items and submenu items using
' data stored on MenuSheet
Do Until IsEmpty(MenuSheet.Cells(Row, 1))
With MenuSheet
MenuLevel = .Cells(Row, 1)
Caption = .Cells(Row, 2)
PositionOrMacro = .Cells(Row, 3)
Divider = .Cells(Row, 4)
FaceId = .Cells(Row, 5)
nextlevel = .Cells(Row + 1, 1)
End With
Select Case MenuLevel
Case 1 ' A Menu
' Add the top-level menu to the Worksheet CommandBar
Set MenuObject = Application.CommandBars(1). _
Controls.Add(Type:=msoControlPopup, _
Befo=PositionOrMacro, _
Temporary:=True)
MenuObject.Caption = Caption
Case 2 ' A Menu Item
If nextlevel = 3 Then
Set MenuItem =
MenuObject.Controls.Add(Type:=msoControlPopup)
Else
Set MenuItem =
MenuObject.Controls.Add(Type:=msoControlButton)
MenuItem.OnAction = PositionOrMacro
End If
MenuItem.Caption = Caption
If FaceId < "" Then MenuItem.FaceId = FaceId
If Divider Then MenuItem.BeginGroup = True
Case 3 ' A SubMenu Item
Set SubMenuItem =
MenuItem.Controls.Add(Type:=msoControlButton)
SubMenuItem.Caption = Caption
SubMenuItem.OnAction = PositionOrMacro
If FaceId < "" Then SubMenuItem.FaceId = FaceId
If Divider Then SubMenuItem.BeginGroup = True
End Select
Row = Row + 1
Loop
End Sub
Reply With Quote
papou
View Public Profile
Find all posts by papou