用VBA代码处理菜单和工具栏之一
获取关于菜单和工具栏的信息。
所有OFFICE组件应用程序都包含内置工具栏,可以进一步自定义工具栏以显示相关命令。它们有三种类型:菜单栏、工具栏和弹出菜单栏(本主题描述工具栏代表三种类型)。
您可以使用以下程序在“即时”窗口中显示所有工具栏以及工具栏中包含的命令控件:
函数CBPrintCBarInfo(strCBarName作为字符串)作为变量
此过程打印(到调试窗口)信息
关于strCBarName参数中指定的命令栏
以及命令栏上每个控件信息。
将工具栏显示为命令栏
Dim ctlCBarControl作为CommandBarControl
const ERR _ INVALID _ CMDBARNAME As Long = 5
出错时转到CBPrintCBarInfo_Err
设置cbrBar = Application。命令栏(strCBarName)
调试。打印"命令栏:" & cbrBar。名称& vbTab & "(" _
& CBGetCBType(CBR bar)& " & vbTab & "(" _
& IIf(cbrBar。内置、“内置”、“自定义”)&”"
对于cbrBar中的每个ctlCBarControl。控制
调试。打印vbTab & ctlCBarControl。标题& vbTab & "(" _
& CBGetCBCtlType(ctlcbar control)& " "
下一个ctlCBarControl
CBPrintCBarInfo_End:
退出功能
CBPrintCBarInfo_Err:
选择案例错误。数字
案例ERR_INVALID_CMDBARNAME
CBPrintCBarInfo = " " & strCBarName & _
“‘不是有效的命令栏名称!"
其他情况
CBPrintCBarInfo = "错误:" & Err。数量_
& " - " & Err。描述
结束选择
恢复CBPrintCBarInfo_End
结束功能
您可以在access的Visual Basic编辑器的“即时”窗口中运行该函数,以获取access菜单或工具栏的所有命令按钮。例如,可以在“即时”窗口中键入以下命令:
CBPrintCBarInfo("Web ")
进入后,可以在即时窗口中显示Web工具栏中包含的所有命令集,如下图所示:
如果命令按钮的类型显示为"弹出",例如,命令"收藏夹"本身就是一个弹出工具栏,你也可以用这个函数得到每个命令按钮的列表,例如:
CBPrintCBarInfo("收藏夹")
您可以通过名称或集合索引来访问工具栏集合中的每个工具栏。请注意,与其他集合不同,所有集合索引都从1开始。
0条评论