Excel菜单和工具栏概要(1)
1 概述
在开始本文之前,先介绍几个常用的概念。
1.1 菜单栏。Excel有两种内置的菜单栏——工作表菜单栏和图表菜单栏。

图1:工作表菜单栏

图2:图表菜单栏
通常显示“工作表菜单栏”,在选中图表后显示“图表菜单栏”。
1.2 工具栏,它们通常包含一个或多个按钮或其它控件。

图3:Excel中的标准工具栏
1.3 快捷菜单,即在工作表中某个对象上单击鼠标右键时,会弹出与该对象相关的一组菜单,以方便对该对象进行操作。

图4:在某单元格上单击鼠标右键后弹出的快捷菜单
在本文中,我们把上述菜单栏、工具栏和快捷菜单统称为“命令栏”。
2 Excel帮助中关于命令栏的对象模型,如下图。

图5-1:命令栏对象集合

图5-2:命令栏

图5-3:命令栏控件

图5-4:命令栏控件对象集合

图5-5:弹出式菜单控件

图5-6:命令栏按钮控件

图5-7:命令栏组合框控件
3 命令栏对象集合(CommandBars集合)
CommandBars集合包含Excel中的所有命令栏,即是所有CommandBar对象的集合,而每个CommandBar对象都有一个Controls集合。CommandBars集合的父对象是Application对象。
通过CommandBars集合的Type属性,可以确定命令栏的类型:
(1)Type属性值为0代表工具栏,其常量为msoBarTypeNormal。
(2)Type属性值为1代表菜单栏,其常量为msoBarTypeMenuBar。
(3)Type属性值为2代表快捷菜单,其常量为msoBarTypePopup。
下面的过程代码将列出Excel中所有的命令栏:
Dim Row As Integer
Dim cBar As CommandBar
Cells(1, 1) = "索引值"
Cells(1, 2) = "名称"
Cells(1, 3) = "类型"
Cells(1, 4) = "是否内置"
Range(Cells(1, 1), Cells(1, 4)).Font.Bold = True
Row = 2
For Each cBar In CommandBars
Cells(Row, 1) = cBar.Index
Cells(Row, 2) = cBar.Name
Select Case cBar.Type
Case msoBarTypeNormal
Cells(Row, 3) = "工具栏"
Case msoBarTypeMenuBar
Cells(Row, 3) = "菜单栏"
Case msoBarTypePopup
Cells(Row, 3) = "快捷菜单"
End Select
Cells(Row, 4) = cBar.BuiltIn
Row = Row + 1
Next cBar
Cells.Columns.AutoFit
End Sub
示例工作簿下载地址:
下载Excel命令栏清单
<未完待续>

liuxujing:
多谢。哈哈
18 05月 2008, 10:28 pm