又是一篇别人总结的文章,摘取了其中一部分,其中CommandBar对象比较有用。

一)工具栏及其控件对象
  在Office中通过VBA开发工具栏和菜单,需使用Office提供的CommandBar、CommandBarButton、CommandBarComboBox等对象,这些对象即代表工具栏、工具栏按钮和工具栏下拉框,通过这些对象可编制出各类复杂的工具栏或菜单。
1.CommandBars集合
  该集合代表Office所有的工具栏,可用名称或索引号指定菜单栏或工具栏,但仅可用名称指定一个菜单、快捷菜单或子菜单。如两个或两个以上自定义菜单或子菜单名称相同,则返回第一个具有该名称的对象。
  其Add方法用于新建一个工具栏,并返回 CommandBar对象。
  语法:expression.Add(Name, Position, MenuBar, Temporary)
  参数说明:
  Name为可选的Variant 类型,代表新工具栏的名称。如果省略,则使用默认的名称;Position为可选的Variant 类型,代表新工具栏的位置。该参数值可通过VBA常量进行设置,如msoBarLeft、msoBarTop、msoBarRight、msoBarBottom常量(设置新工具栏位于软件工具栏中位置);msoBarFloating常量(代表新工具栏可移动);msoBarPopup常量(代表新工具栏为快捷菜单)等;MenuBar为可选的Variant 类型,用于设置是否用新工具栏替换活动工具栏;Temporary为可选的Variant 类型,用于设置新工具栏是否暂时有效。

2.CommandBar对象
  该对象代表应用程序中的工具栏,新建工具栏的控件均以该对象为载体。
  (1)Controls属性:返回CommandBarControls对象,代表指定工具栏中的所有控件。
  (2)NameLocal属性:返回由应用程序版本语言所设置的工具栏名称,如对软件的内置工具栏设置会出现错误。
  (3)Position属性:返回或设置工具栏的位置,值可通过VBA常量进行设置,如msoBarLeft、msoBarTop、msoBarRight、msoBarBottom、msoBarFloating、msoBarPopup或msoBarMenu等。
  (4)Type属性:返回或设置工具栏的类型,值可通过VBA常量进行设置,如msoBarTypeNormal(工具栏为普通类型)、msoBarTypeMenuBar(工具栏为菜单类型)、msoBarTypePopup(工具栏为弹出菜单类型)等。
  (5)Reset方法:将内置工具栏重置为默认设置,在恢复软件原有工具栏或菜单时非常有用。重置内置工具栏将删除其中的自定义控件并恢复其内置控件。
3.CommandBarControls集合
  该集合代表工具栏中的所有工具栏控件。
  其Add方法用于在CommandBarControls集合中增加一个工具栏控件。
4.CommandBarControl对象
  该对象代表工具栏控件,对自定义工具栏控件,可使用 CommandBarButton、CommandBarComboBox和CommandBarPopup对象进行定义,而对软件内置的控件进行操作,而该控件又无法使用上述三个对象表示,则可使用CommandBarControl对象。
  (1)BeginGroup属性:用于设置工具栏控件是否分组显示。
  (2)Caption属性:用于设置工具栏控件的标题文字,并可作为默认的控件屏幕提示。
  (3)Id属性:用于设置CommandBarButton、CommandBarComboBox和CommandBarControl对象的功能,这些控件可直接设置为内置工具栏控件的ID,这样该控件即具备了软件内置的相应功能,自定义控件的ID属性均需设置为1。
  (4)Copy方法:将工具栏控件复制到已有的工具栏中。
  语法:expression.Copy(Bar, Before)
  参数说明:
  Bar为可选的Variant 类型,代表目标工具栏,如果省略,则控件将复制到自身所在的工具栏;Before为可选的Variant 类型,代表新控件在指定工具栏的位置,即新控件将添加至该位置的控件前,如果省略,则控件将复制到工具栏的末尾。
  (5)Type属性:返回工具栏控件的类型,可通过VBA常量进行引用,常用的工具栏控件类型如下表所示:
常量名称  含义
msoControlButton 控制按钮
msoControlButtonDropdown 带下拉列表的按钮
msoControlButtonPopup 带弹出菜单的按钮
msoControlComboBox 下拉组合控制框
msoControlDropdown 下拉列表控制框
msoControlEdit 文本框
msoControlExpandingGrid 可扩展的表格
msoControlGraphicCombo 图像下拉组合框
msoControlGraphicDropdown 图像下拉列表框
msoControlGrid 表格
msoControlPopup 弹出菜单
5.CommandBarButton对象
  该对象代表工具栏的按钮控件。
  (1)OnAction属性:返回或设置Visual Basic代码过程名(该代码过程不可使用参数),该过程将在单击按钮后运行。
  (2)Style属性:返回或设置工具栏按钮的显示方式。值可通过VBA常量进行设置,常用的工具栏按钮控件类型如下表所示:
常量名称  含义
msoButtonIcon 包含图标的按钮
msoButtonCaption 包含标题的按钮
ButtonIconandCaption 包含图标和标题的按钮
msoButtonIconAndCaptionBelow 包含图标和标题,且标题位于底部的按钮
msoButtonIconAndWrapCaption 包含图标和标题,且标题自动换行的按钮
msoButtonWrapCaption 包含标题,且标题自动换行的按钮
  (3)TooltipText属性:返回或设置工具栏按钮控件的屏幕提示。
  (4)FaceId属性:返回或设置工具栏按钮的图标编号,设置工具栏按钮的外观而非其功能,自定义图标的工具栏按钮,其 FaceId属性值为 0。
  (5)CopyFace方法:将工具栏按钮控件的图标复制到剪贴板。
  (6)PasteFace方法:将剪贴板的图标内容粘贴至工具栏按钮控件。
  (7)Execute方法:运行工具栏控件对应的过程或内置命令。
6.CommandBarComboBox对象
  该对象代表工具栏中的组合框控件。
  (1)DropDownLines属性:返回或设置组合框控件的行数,如将其设置为 0,则控件行数将取决于列表的条目数。
  (2)List属性:返回或设置组合框控件中某列表项的值,对内置组合框控件只读。
  (3)OnAction属性:返回或设置Visual Basic代码过程名(该代码过程不可使用参数),该过程在单击或更改组合框控件值时运行。
  (4)Type属性:返回或设置组合框控件的显示方式。
  (5)AddItem方法:用于在组合框控件中添加一个列表项,且该组合框控件必须为自定义的控件。
  (6)RemoveItem方法:用于从组合框控件中删除一个列表项。
(二)助手对象
  Office助手是一组卡通动画人物,这些助手可提供友好的信息提示,并可通过自定义对话框(又称“气球”)的文字格式和控件来实现简单的交互。
  1.Assistant对象
  该对象代表Office助手,可通过Application对象的Assistant属性返回Assistant对象。默认助手为“大眼夹”(即“Clippit”),用户可在右键单击助手后出现的快捷菜单中单击“选择助手”菜单项,在弹出的“Office助手”对话框中即可选择不同的助手。
  (1)Animation属性:用于返回或设置Office 助手的动画效果。如应用于 Balloon对象,则“助手”仅在显示气球时才会出现动作,可通过常量赋值,常用的常量及其含义如下表所示:
常量名称
代表的动作
msoAnimationAppear
助手出现
msoAnimationBeginSpeaking
助手开始说话
msoAnimationCheckingSomething
助手检查动作
msoAnimationDisappear
助手消失
msoAnimationGoodbye
助手说“再见”
msoAnimationGreeting
助手致欢迎的动作
msoAnimationIdle
助手休息的动作(为默认动画效果类型)
msoAnimationPrinting
助手打印的动作
msoAnimationSaving
助手保存的动作
msoAnimationSearching
助手开始查找的动作
msoAnimationThinking
助手考虑的动作
  (2)AssistWithAlerts属性:用于设置助手气球是否发送给应用程序警告信息。
  (3)AssistWithHelp属性:用于设置当用户按F1键显示帮助时助手是否出现。
  (4)AssistWithWizards属性:用于设置助手是否提供向导型的联机帮助。
  (5)FeatureTips属性:用于设置助手是否更有效地提供有关应用程序功能信息。
  (6)GuessHelp属性:用于设置助手是否显示帮助主题列表。
  (7)FileName属性:用于设置助手所使用的文件名,助手文件的扩展名为“acs”,一般位于Office的安装目录下。其中“孙悟空”为mnkyking.acs;“大眼夹”为Clippit.acs;“恋恋”为OffCat.acs;“聪聪”为Rocky.acs;“七巧板”为Logo.acs;“小灵通”Dot.acs;“美丽家园”为MNature.acs;“F1”为F1.acs。
  (8)NewBalloon属性:用于新建助手气球,并返回Balloon对象。
  (9)On属性:用于设置是否使用助手。
  (10)Sounds属性:用于设置助手是否发出与动画对应的声音。
  (11)TipOfDay属性:用于设置每次启动Office时,助手是否显示专用的提示。
  2.Balloon对象
  该对象代表气球,助手可在该气球中显示标题、文字和一些控件,通过NewBalloon属性可返回Balloon对象,且任意时刻仅有一个气球可视。
  (1)BalloonType属性:用于设置助手所用的气球类型,可通过常量赋值。创建Balloon对象时,初始值为msoBalloonTypeButtons常量。
  (2)Button属性:用于设置助手气球底部按钮类型。创建Balloon对象时,初始值为msoButtonSetOK。
  (3)Icon属性:用于设置助手气球左上角的图标类型,可通过常量赋值。
  (4)Checkboxes属性:返回BalloonCheckboxes集合,即气球中的所有复选框。
  (5)Heading属性:用于设置助手气球中的标题。气球标题和文本均支持包含下划线和系统调色板16色的文字。
  如需显示包含下划线的文字,可通过“{ul}”、“{ul 1}”语法来开始下划线和“{ul 0}” 语法来清除下划线;如需改变文字颜色,可通过“{cf number}”语法,其中number常数为系统调色板支持的16种颜色。
  (6)Labels属性:返回BalloonLabels 集合,即气球中的所有标签。
  (7)Mode属性:用于设置气球的模态,即是否在显示气球的同时允许用户在程序中继续工作。
  (8)Text属性:用于设置助手在气球标签、复选框或直接显示部分的文字。
  (9)Close方法:用于关闭活动的非模态气球,仅在回调过程中才可使用。
  (10)Show方法:用于显示指定的气球对象。
  3.BalloonCheckBox对象
  该对象代表气球中的复选框控件。
  Checked属性:返回是否已选择气球中的指定复选框。
  (三)内置对话框对象
  Office使用了大量的内置对话框,在Word和Excel中提供了开发接口,使开发者可充分利用内置对话框实现很多操作,尤其在Word中可使用多种方法显示内置对话框,实现不同的功能需求,这里,我们以Word的内置对话框为例进行讲解。
  1.Dialogs集合对象
  该集合对象代表Word或Excel中的Dialog对象集合,其中每个Dialog对象均代表一个内置对话框,无法在Dialogs集合中创建新的内置对话框,也无法添加对话框。
  2.Dialog对象
  该对象代表内置对话框。
  (1)CommandName属性:用于返回显示指定内置对话框对应的过程名。
  (2)DefaultTab属性:用于设置显示指定对话框时,其被激活的选项卡。
  (3)Display方法:用于显示指定的内置对话框,并直至用户关闭该对话框或超时,使用显示内置对话框时,不会执行任何操作(即仅用于显示),但可返回用户关闭对话框时所单击的按钮代号。
  其中,返回-2,代表“关闭”按钮;返回-1,代表“确定”按钮;返回0,代表“取消”按钮;返回大于 0的值,则1代表第一个按钮,2代表第二个按钮,以此类推。
  (4)Execute方法:用于应用内置对话框的当前设置。
  (5)Show方法:用于显示并执行内置对话框,即如同用户通过菜单或工具栏打开对话框,和Display方法相同,均返回用户关闭对话框时所单击的按钮代号。
  (6)Update方法:用于更新内置对话框的参数值。

转载于:https://www.cnblogs.com/Jinspet/archive/2009/02/05/1384336.html

VBA---EXcel工具栏及控件对象、助手对象、内置对话框对象介绍相关推荐

  1. C# 添加Excel表单控件(Form Controls)

    在Excel中,添加的控件可以和单元格关联,我们可以操作控件来修改单元格的内容,在下面的文章中,将介绍在Excel中添加几种不同的表单控件的方法,包括: 添加文本框(Textbox) 单选按钮(Rad ...

  2. excel 表单控件 按钮_Excel表单控制按钮怪癖

    excel 表单控件 按钮 If you're building an Excel workbook for other people to use, you can add form control ...

  3. excel自带有vba手册吗_使用VAB打开Excel内置对话框

    步骤2中"Application.Dialogs(1).Show"括号中的参数可以变化,根据参数的不同,运行程序之后会打开不同的Excel内置对话框,在此就不逐一示例了,常用参数对 ...

  4. MFC中,如何获得对话框控件相对于父窗口(对话框窗口)的位置

    在MFC中,如何获得对话框控件相对于父窗口(对话框窗口)的位置: CRect  r; pWnd->GetWindowRect(&r); 这样获得的r是控件相对于屏幕的坐标,然后用Scre ...

  5. ES6学习笔记(五):轻松了解ES6的内置扩展对象

    前面分享了四篇有关ES6相关的技术,如想了解更多,可以查看以下连接 <ES6学习笔记(一):轻松搞懂面向对象编程.类和对象> <ES6学习笔记(二):教你玩转类的继承和类的对象> ...

  6. EXCEL 表单控件与ACTIVEX控件的区别

    近期,有同事非要在EXCEL里实现复选框显示/隐藏特定数行的功能,在帮助其实现过程中发现,很有必要了解表单控件和ACTIVEX控件的区分. 首先,要记住一个网址:http://www.excelhom ...

  7. Excel 表单控件在工作表大小和位置固定方法

    大家都知道在word中控件的使用频率是相当高的,但在Excel中也会有用到控件的时候.如复选框.组合框等等.本文的主要目的是教会大家ActiveX控件中复选框的添加,以及组合框的隐藏方法,看似很简单, ...

  8. 【office 2007~office 2019】Excel日期选择控件插件安装

    目录 下载地址 安装及使用 在EXCEL的数据录入当中,有大量的日期输入的时候,单靠手工输入,有时也比较麻烦.有没有一个时间的选择,让日期的数据录入工作变得简单.下面介绍一个使用samradapps_ ...

  9. Excel使用日历控件

    在导入日历控件后,可以通过如下代码,在Excel的表格中获得对应选择日期的值. Private Sub DTPicker1_Change()Dim sDate As String, sTime As ...

最新文章

  1. VTK:图片之Flip
  2. 什么是Lucene和Solr和Elasticsearch,它们的区别是什么?
  3. windows资源管理器已停止工作后,使用命令提示窗口拷贝文件和运行exe程序
  4. 《关键对话——注意观察,如何判断对话氛围是否安全》读书笔记(四)
  5. java代码实现读写txt文件(txt文件转换成java文件)
  6. 有限时间不明确需求项目的上线(部分还款)
  7. 新书推荐|Windows黑客编程技术详解
  8. gtest -UT测试框架
  9. ONES X 中农网|多产品线研发项目管理实践
  10. 优秀项目经理应具备的素质和能力
  11. 【windows10】宽带拨号连接报错720的解决办法
  12. Android7.1 亮度自动调节
  13. 视频教程-计算机二级(VB)-计算机等级考试
  14. Hadoop——MapReduce相关eclipse配置及Api调用(图文超详细版)(内含遇到错误的解决方法)
  15. 智慧灯杆(路灯)控制系统平台架构的主要设备有哪些?
  16. Ubuntu 下PupBot 搭建QQ机器人
  17. 基于ESp8266的智能插座
  18. 开源机器学习流水线(Pipeline)工具调研(MLOps)
  19. 04 关于OSPF的环回口
  20. 【厚积薄发系列】C++项目总结11—基于Python爬虫框架的Bug规范性检查系统

热门文章

  1. MySQL 基础名词符号解释第一部分(带简单例子)
  2. JMeter无法读取csv文件
  3. web前端开发技术实验与实践(第三版)储久良编著 项目16 div+CSS页面布局设计
  4. GitHub常用命令及常见问题解决方案
  5. Linux 怎样通过win 远程桌面连接链接Linux后台服务器的可视化图形界面
  6. 宝鲲财经:外汇操作技巧浅析
  7. 基于live555的流媒体代理转发服务器
  8. 【ROS】使用自己的USB单目摄像头测试ORBSLAM2
  9. OpenCV棋盘角点检测原理总结
  10. 基因组大数据与全民健康