在Excel(2010)中,我创建了一个菜单
Dim NewMenu As CommandBarPopup
Set NewMenu = CommandBars(1).Controls.Add(Type:=msoControlPopup, Before:=HelpMenu.Index, temporary:=True)
NewMenu.Caption = "&MyMenu"
并添加了一些物品
Dim MenuItem As CommandBarControl
Set MenuItem = NewMenu.Controls.Add(Type:=msoControlButton)
With MenuItem
.Caption = "&Item1..."
.Tag = "Item1"
End With
现在,以后如何使用VBA查找特定的菜单项来启用或禁用它?
我尝试了以下
Dim itm As CommandBarControl
For Each itm In Application.CommandBars(1).Controls("&MyMenu")
If itm.Tag="Item1" Then ...
Next
但是出现“对象不支持这种类型或方法”错误。
最佳答案
无需循环,您可以直接解决该Item
。例如
Dim ctlItm As CommandBarControl
Set ctlItm = NewMenu.Controls("Item1...")