Excel 2007 自定义菜单技术(2)
2007-02-03 21:37:56 来源:WEB开发网图2:存放菜单项的表格
该表格包含5列:
(1) 级别:指定的菜单项的级别,有效值是1、2、3。第1级别是菜单,第2级别是菜单项,第3级别是子菜单项。正常情况下,有一个第1级别的菜单,下面包含有第2级别的菜单项。一个第2级别的菜单项可能包含或不包含有第3级别的菜单项(子菜单项)。
(2) 标题:显示在菜单、菜单项和子菜单项中的文字。使用连接符(&)指定一个带下划线的字符。
(3) 位置/宏:对于第1级菜单,应该是一个整数,代表菜单在菜单栏中的位置。对于第2级或第3级菜单项,应该是一个宏,当该菜单项被选择时执行相应的宏。如果第2级菜单项有一个或多个第3级菜单项,第2级菜单项可能没有一个宏与它相关联。
(4) 分隔线:如果设置为真,将在菜单项或子菜单项前放置一个分隔线。
(5) FaceID(图标号):可选的。一个代码数字,代表显示在菜单项前内置的图形图像。获取代码数字可见上文所介绍的识别工具栏图像的内容。
下图3显示了使用上面的表格所创建的自定义菜单。
图3:一个自定义菜单的例子
要在工作簿或者加载宏中使用这项技术,可以按照下面的步骤进行:
(1) 打开前面下载的工作簿文件。该工作簿包含有VBA代码和一个名为MenuSheet的工作表。
(2) 将该工作簿中的所有代码复制到自已的VBA工程的模块中。
(3) 将下面的子过程添加到ThisWorkbook对象模块中:
Private Sub Workbook_Open()
Call CreateMenu
End SubPrivate Sub Workbook_BeforeClose(Cancel As Boolean)
Call DeleteMenu
End Sub
(4) 当工作簿打开时,执行Workbook_Open子过程,当工作簿关闭时,执行Workbook_BeforeClose子过程。
(5) 插入一个新工作表并命名为MenuSheet。然后直接复制menumakr.xls文件中的表格到MenuSheet工作表中。
(6) 按自已的需要修改MenuSheet工作表中的表格。
相关文章:Excel 2007 自定义菜单技术(1)
注:本教程为fanjy原创,豆豆学园整理,首发于http://blog.excelhome.net
更多精彩
赞助商链接