ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Enable/Disable Menu Items (https://www.excelbanter.com/excel-programming/321586-enable-disable-menu-items.html)

Andrew Kennard

Enable/Disable Menu Items
 
Hi all

I've created my own custom menu and added items to it.

eg My Menu, Item1, Item 2 etc

I would like to be able to change the enabled property of each item inside
certain subs. But no matter what I try I can't seem to 'get a hold' on the
ITEM to change it's state ? I have sucessfully changed the state of the MENU
to enabled true/false but not indiviual items.

I've done lots of googling but still have no luck with simlar 'delete'
examples that I presume should work. The main problem sees to be even adding
Tag properties I cannot use FindControls to find an ITEM

TIA

Andrew



Jake Marx[_3_]

Enable/Disable Menu Items
 
Hi Andrew,

If you create your menu like this:

Sub CreateMyMenu()
With Application.CommandBars("Worksheet Menu Bar"). _
Controls.Add(Type:=msoControlPopup, Temporary:=False)
.Caption = "My Menu"
With .Controls.Add(Type:=msoControlButton)
.Caption = "Item 1"
.Tag = "Item 1"
End With
With .Controls.Add(Type:=msoControlButton)
.Caption = "Item 2"
.Tag = "Item 2"
End With
End With
End Sub

You should be able to use a routine like this to enable/disable a given
control via its Tag property:

Sub ToggleMenuItem(rsTag As String, rbEnabled As Boolean)
Application.CommandBars.FindControl(Tag:=rsTag). _
Enabled = rbEnabled
End Sub


--
Regards,

Jake Marx
MS MVP - Excel
www.longhead.com

[please keep replies in the newsgroup - email address unmonitored]


Andrew Kennard wrote:
Hi all

I've created my own custom menu and added items to it.

eg My Menu, Item1, Item 2 etc

I would like to be able to change the enabled property of each item
inside certain subs. But no matter what I try I can't seem to 'get a
hold' on the ITEM to change it's state ? I have sucessfully changed
the state of the MENU to enabled true/false but not indiviual items.

I've done lots of googling but still have no luck with simlar 'delete'
examples that I presume should work. The main problem sees to be even
adding Tag properties I cannot use FindControls to find an ITEM

TIA

Andrew



Tom Ogilvy

Enable/Disable Menu Items
 
Commandbars("Custom 2").Controls(3).Controls(2).Enabled = False

worked for me.

--
Regards,
Tom Ogilvy

"Andrew Kennard" wrote in message
...
Hi all

I've created my own custom menu and added items to it.

eg My Menu, Item1, Item 2 etc

I would like to be able to change the enabled property of each item inside
certain subs. But no matter what I try I can't seem to 'get a hold' on the
ITEM to change it's state ? I have sucessfully changed the state of the

MENU
to enabled true/false but not indiviual items.

I've done lots of googling but still have no luck with simlar 'delete'
examples that I presume should work. The main problem sees to be even

adding
Tag properties I cannot use FindControls to find an ITEM

TIA

Andrew





Andrew Kennard

Enable/Disable Menu Items
 
Thanks for that

Now got it working ...... the problem (very strange) seems to be if the Tag
value is "PB" it does not work ??? ie FindControl doesn't find it ?

TIA

Andrew

"Tom Ogilvy" wrote in message
...
Commandbars("Custom 2").Controls(3).Controls(2).Enabled = False

worked for me.

--
Regards,
Tom Ogilvy

"Andrew Kennard" wrote in message
...
Hi all

I've created my own custom menu and added items to it.

eg My Menu, Item1, Item 2 etc

I would like to be able to change the enabled property of each item
inside
certain subs. But no matter what I try I can't seem to 'get a hold' on
the
ITEM to change it's state ? I have sucessfully changed the state of the

MENU
to enabled true/false but not indiviual items.

I've done lots of googling but still have no luck with simlar 'delete'
examples that I presume should work. The main problem sees to be even

adding
Tag properties I cannot use FindControls to find an ITEM

TIA

Andrew








All times are GMT +1. The time now is 06:59 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com