微软office系列中VBA脚本开发共用对

  • 格式:docx
  • 大小:25.77 KB
  • 文档页数:11

VBA开发共用对象详解VBA和其他面向对象的开发语言类似,同样有非常多的对象组成,且不同的Office成员即提供了大量的开发对象,如工具栏、Office助手、内置对话框和窗体等。

(一)工具栏及其控件对象在Office中通过VBA开发工具栏和菜单,需使用Office提供的CommandBar、CommandBarButton、CommandBarComboBox等对象,这些对象即代表工具栏、工具栏按钮和工具栏下拉框,通过这些对象可编制出各类复杂的工具栏或菜单。

mandBars集合该集合代表Office所有的工具栏,可用名称或索引号指定菜单栏或工具栏,但仅可用名称指定一个菜单、快捷菜单或子菜单。

如两个或两个以上自定义菜单或子菜单名称相同,则返回第一个具有该名称的对象。

其Add方法用于新建一个工具栏,并返回CommandBar对象。

语法:expression.Add(Name, Position, MenuBar, Temporary)参数说明:Name为可选的Variant 类型,代表新工具栏的名称。

如果省略,则使用默认的名称;Position为可选的Variant 类型,代表新工具栏的位置。

该参数值可通过VBA常量进行设置,如msoBarLeft、msoBarTop、msoBarRight、msoBarBottom常量(设置新工具栏位于软件工具栏中位置);msoBarFloating常量(代表新工具栏可移动);msoBarPopup常量(代表新工具栏为快捷菜单)等;MenuBar为可选的Variant 类型,用于设置是否用新工具栏替换活动工具栏;Temporary为可选的Variant 类型,用于设置新工具栏是否暂时有效。

mandBar对象该对象代表应用程序中的工具栏,新建工具栏的控件均以该对象为载体。

(1)Controls属性:返回CommandBarControls对象,代表指定工具栏中的所有控件。

(2)NameLocal属性:返回由应用程序版本语言所设置的工具栏名称,如对软件的内置工具栏设置会出现错误。

(3)Position属性:返回或设置工具栏的位置,值可通过VBA常量进行设置,如msoBarLeft、msoBarTop、msoBarRight、msoBarBottom、msoBarFloating、msoBarPopup或msoBarMenu等。

(4)Type属性:返回或设置工具栏的类型,值可通过VBA常量进行设置,如msoBarTypeNormal(工具栏为普通类型)、msoBarTypeMenuBar(工具栏为菜单类型)、msoBarTypePopup(工具栏为弹出菜单类型)等。

(5)Reset方法:将内置工具栏重置为默认设置,在恢复软件原有工具栏或菜单时非常有用。

重置内置工具栏将删除其中的自定义控件并恢复其内置控件。

mandBarControls集合该集合代表工具栏中的所有工具栏控件。

其Add方法用于在CommandBarControls集合中增加一个工具栏控件。

mandBarControl对象该对象代表工具栏控件,对自定义工具栏控件,可使用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 弹出菜单mandBarButton对象该对象代表工具栏的按钮控件。

参数),该过程将在单击按钮后运行。

(2)Style属性:返回或设置工具栏按钮的显示方式。

值可通过VBA常量进行设置,常用的工具栏按钮控件类型如下表所示:常量名称含义msoButtonIcon 包含图标的按钮msoButtonCaption 包含标题的按钮ButtonIconandCaption 包含图标和标题的按钮msoButtonIconAndCaptionBelow 包含图标和标题,且标题位于底部的按钮msoButtonIconAndWrapCaption 包含图标和标题,且标题自动换行的按钮msoButtonWrapCaption 包含标题,且标题自动换行的按钮(3)TooltipText属性:返回或设置工具栏按钮控件的屏幕提示。

(4)FaceId属性:返回或设置工具栏按钮的图标编号,设置工具栏按钮的外观而非其功能,自定义图标的工具栏按钮,其FaceId属性值为0。

(5)CopyFace方法:将工具栏按钮控件的图标复制到剪贴板。

(6)PasteFace方法:将剪贴板的图标内容粘贴至工具栏按钮控件。

(7)Execute方法:运行工具栏控件对应的过程或内置命令。

mandBarComboBox对象该对象代表工具栏中的组合框控件。

(1)DropDownLines属性:返回或设置组合框控件的行数,如将其设置为0,则控件行数将取决于列表的条目数。

(2)List属性:返回或设置组合框控件中某列表项的值,对内置组合框控件只读。

参数),该过程在单击或更改组合框控件值时运行。

(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属性:用于设置助手气球中的标题。