作者:绿色风
分类:
时间:2022-08-18
浏览:148
楼主 水星钓鱼 |
Q:虽然Excel 2007以后很多菜单都被“功能区”替代,但是还是有些菜单是可以用代码来控制修改的,如单元格的右键菜单。 要表示这些菜单,必须知道这些菜单对应的Name,才能用Application.CommandBars返回这些菜单。如何才能知道各菜单对应的Name呢? A:可以使用以下代码列出当前Excel版本中的所有菜单的名称和类型- Sub xyf()
- Dim oCmdBar As CommandBar
- Dim i, temp
- [a1:c1] = Array("在集合中引用的名称", "当前系统的菜单名称", "类型")
- i = 2
- For Each oCmdBar In Application.CommandBars
- Select Case oCmdBar.Type
- Case 0
- temp = "msoBarTypeNormal"
- Case 1
- temp = "msoBarTypeMenuBar"
- Case 2
- temp = "msoBarTypePopup"
- End Select
- Cells(i, 1) = oCmdBar.Name
- Cells(i, 2) = oCmdBar.NameLocal
- Cells(i, 3) = temp
- i = i + 1
- Next
- End Sub
如下图所示:
根据图示,如果要表示单元格的右键菜单可以使用Application.CommandBars("cell")来表示。 附件如下:
菜单名称及其对应的类型.rar
|
2楼 罗刚君 |
同样是右键菜单,2003 2007和2010的内部编码也是有分别的 微软居然不统一..... |
3楼 水星钓鱼 |
确实是,难说日后这个对象不会被废弃。 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一