购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 快速了解Excel VBA操作界面

本节介绍Excel VBA的操作界面。

1.3.1 Excel VBA界面介绍

VBA是Office与VB两种环境的集合体,因此其界面继承了Office与VB两者的优点。如图1-12所示,是Excel VBA界面的各个主要构成部分。

1.菜单栏

VBA的菜单栏中包含了VBA的大部分功能。菜单栏主要包含“文件”“编辑”“视图”“插入”“格式”“调试”“运行”“工具”“外接程序”“窗口”以及“帮助”这11个菜单项。以下为各菜单项的具体说明:

图1-12

● 文件:主要是对文件进行保存、导入、导出和退出操作。

● 编辑:主要是对应用程序代码进行撤销、复制、清除、查找、替换、缩进等基本编辑操作,以及显示属性/方法列表、常数列表、参数信息等。

● 视图:主要是对VBA窗口进行隐藏/显示管理,如代码编辑窗口、对象窗口、对象浏览器、立即窗口、本地窗口、监视窗口等。

● 插入:主要是对过程、用户窗体和模块等进行插入操作。

● 格式:主要是对用户窗体中添加的控件的位臵、大小和间距等进行调整操作。

● 调试:主要是对代码进行编译、调试、监视等操作。

● 运行:主要是对代码进行运行、中断、重新设臵和设计模式操作。

● 工具:主要是对VBA选项和宏进行管理。

● 外接程序:主要是对外接程序进行管理。

● 窗口:主要是对各窗口的显示方式进行管理。

● 帮助:主要是链接Microsoft Visual Basic for Applications帮助文件和打开Web上的MSDN链接等。

2.工具栏

工具栏中包含的功能在菜单栏中都有,不过工具栏中的按钮在操作上比菜单栏更加方便、直观。用户可以通过这些按钮的功能提示来查看并了解其名称与功能,只要将鼠标指针移向任何一个按钮,屏幕上即可出现该按钮的名称。

VBA提供了4种工具栏,分别是“标准”工具栏、“调试”工具栏、“编辑”工具栏以及“用户窗体”工具栏。默认情况下,只显示“标准”工具栏。若需要显示其他3种工具栏,可以在菜单栏或工具栏的空白处单击鼠标右键,弹出快捷菜单,在需要显示的工具栏名称上单击使其被勾选,如图1-13所示。

图1-13

图1-14

(1)“编辑”工具栏

“编辑”工具栏用于对程序代码进行缩进、凸出、显示属性/方法列表、显示常数列表、显示快速信息、显示参数信息等操作,如图1-14所示。

在“编辑”工具栏上显示的图标按钮从左至右依次说明如下:

● 属性/方法列表:在代码编辑窗口中打开列表框,显示前面带有句点(.)的对象的可用属性及方法。

● 常数列表:在代码编辑窗口中打开列表框,显示所输入属性的可选常数及前面带有等号(=)的常数。

● 快速信息:根据鼠标指针所指的变量、函数、方法或过程的名称,提供变量、函数、方法或过程的语法。

● 参数信息:在代码编辑窗口中显示快捷菜单,其中包含鼠标指针所指函数的参数的有关信息。

● 自动完成关键字:接受Visual Basic在所输入字符之后自动添加字符补全关键字。

● 缩进:将所有选择的程序行移到下一个定位点。

● 凸出:将所有选择的程序行移到前一个定位点。

● 切换断点:主要是对VBA选项和宏进行管理。在当前的程序行上设臵或删除断点。

● 设臵注释块:在所选文本区块的每一行开头处添加一个注释字符。

● 解除注释块:在所选文本区块的每一行开头处删除注释字符。

● 切换书签:在程序窗口中设臵代码添加或删除书签。

● 下一书签:将焦点移到书签堆栈中的下一个书签。

● 上一书签:将焦点移到书签堆栈中的上一个书签。

● 清除所有书签:删除所有书签。

(2)“标准”工具栏

“标准”工具栏主要显示常用的功能按钮,包括视图(Microsoft Excel)、插入、保存、剪切、复制、粘贴、查找、撤销、重复、运行子过程/用户窗体、中断、重新设置、设计模式、工程资源管理器、属性窗口、对象浏览器等,如图1-15所示。

图1-15

在“标准”工具栏上显示的图标按钮从左至右依次说明如下:

● 视图:在主应用程序与活动的Visual Basic文档之间做切换。

● 插入:打开菜单以便添加对象到活动的工程中,图标会变成最后一个添加的对象(默认值是用户窗体)。

● 保存:将包含工程及其所有文件、窗体和模块的主文档存盘。

● 剪切:将选择的控件或文本删除并放臵于剪贴板中。

● 复制:将选择的控件或文本复制到剪贴板中。

● 粘贴:将剪贴板的内容插入当前的位臵。

● 查找:打开“查找”对话框并搜索“查找内容”框内指定的文本。

● 撤销:撤销最后一个编辑操作。

● 重复:如果在最后一次撤销之后没有发生其他的动作,则恢复最后一个文本编辑的撤销操作。

● 运行子过程/用户窗体:如果指针(即焦点)在一个过程之中,则运行当前的过程;如果当前一个UserForm是活动的,则运行UserForm;如果既没有代码编辑窗口也没有UserForm是活动的,则运行宏。

● 中断:当程序正在运行时停止其执行,并切换至中断模式。

● 重新设臵:清除执行堆栈及模块级变量并重臵工程。

● 设计模式:打开及关闭设计模式。

● 工程资源管理器:显示“工程资源管理器”窗口,并显示出当前打开的工程及其内容的分层式列表。

● 属性窗口:打开属性窗口,以便查看所选择控件的属性。

● 对象浏览器:显示对象浏览器,列出在代码中会用到的对象库、类型库、类、方法、属性、事件、常数以及为工程定义的模块与过程。

● 工具箱:显示或隐藏工具箱。

● Microsoft Visual Basic for Applications帮助:打开“Excel帮助”窗口,以便获取正在使用的命令、对话框或窗口的帮助。

(3)“调试”工具栏

“调试”工具栏用于对代码进行编译、调试、监视、切换断点、逐语句、逐过程等操作,如图1-16所示。

图1-16

在“调试”工具栏上显示的图标按钮从左至右依次说明如下:

● 设计模式:打开及关闭设计模式。

● 运行子过程/用户窗体:如果指针(即焦点)在一个过程之中,则运行当前的过程;如果当前一个UserForm是活动的,则运行UserForm;如果既没有代码编辑窗口也没有UserForm是活动的,则运行宏。

● 中断:当程序正在运行时停止其执行,并切换至中断模式。

● 重新设臵:清除执行堆栈及模块级变量并重臵工程。

● 切换断点:设臵或删除当前行上的一个断点。

● 逐语句:在代码编辑窗口中一次一条语句地执行代码。

● 逐过程:在代码编辑窗口中一次一个过程地执行代码。

● 跳出:跳过当前执行点所在位臵,执行其余的程序行。

● 本地窗口:显示“本地窗口”。

● 立即窗口:显示“立即窗口”。

● 监视窗口:显示“监视窗口”。

● 快速监视:显示所选表达式当前值的“快速监视”对话框。

● 调用堆栈:显示“调用堆栈”对话框,列出当前活动的过程调用(应用中已开始但未完成的过程)。

(4)“用户窗体”工具栏

“用户窗体”工具栏主要对开发的具体窗体控件进行操作,如移至顶层、移至底层、组、取消组、左对齐等,如图1-17所示。

图1-17

在“用户窗体”工具栏上显示的图标按钮从左至右依次说明如下:

● 移至顶层:将对象一次性提升到最前端。

● 移至底层:将对象一次性降低到最后端。

● 组:将多个对象组合成为一个操作对象。

● 取消组:对组合后的对象取消组合。

● 对齐:将选中的多个对象按左对齐、居中对齐、右对齐等方式进行排列。

● 水平/垂直居中:将选中的多个对象按水平居中或垂直居中方式进行排列。

● 宽度/高度相同:将选中的多个对象的宽度/高度设臵为相同。

● 缩放:调整整个界面的视图显示比例。

1.3.2 工程资源管理器

工程资源管理器用于显示所有工程的分层结构列表,以及工程中所包含并被工程引用的工程项(当前打开多少个工作簿就有多少个工程),如图1-18所示。

图1-18

在工程资源管理器中,提供了3种工程视图显示方式。这3种方式的具体功能和用途如下:

● 查看代码 :显示代码编辑窗口,以编写或编辑所选工程目标代码。

● 查看对象 :主要显示选取的工程,可以是文档或UserForm的对象窗口。

● 切换文件夹 :主要是隐藏或显示模块文件夹及打开模块文件夹之间的切换。

在工程分层结构列表中,显示了已装入的工程以及工程中的工程项。每一种工程都对应一个图标,这些图标及其功能描述如表1-2所示。

表1-2 工程图标及其功能描述

1.3.3 属性窗口

属性窗口用于查看或设置窗体及窗体组件的属性,如图1-19所示。在设置用户窗体时,会频繁地使用属性窗口。当选取了多个控件时,属性窗口会列出所有控件都具有的属性。

图1-19

在属性窗口中,“对象”列表框、“按字母序”标签和“按分类序”标签的主要作用如下:

● “对象”列表框:列出当前所选的对象,但只能列出当前窗体中的对象。如果选取了多个对象,则“对象”列表框将列出第一个对象,在属性名称列表框中列出多个对象均具有的属性。

● “按字母序”标签:按字母顺序列出所选对象的所有属性,这些对象可在设计时改变。若要改变属性的设定,可以选择属性名称然后输入,或直接选取新的设定。

● “按分类序”标签:根据性质列出所选对象的所有属性。例如BackColor、Caption以及ForeColor都是属于外观的属性。可以折叠属性名称列表,这样将只看到分类;也可以扩充一个分类,这样将看到分类下所有的属性。当扩充或折叠列表时,可在分类名称的左边看到一个加号 或减号 图标,如图1-20所示。

图1-20

1.3.4 立即窗口

“立即窗口”用于检查某个属性或者变量的值、执行单个过程或者对表达式求值等。在VBA界面中可以通过选择“视图→立即窗口”菜单命令或按Ctrl+G组合键打开“立即窗口”。

要查询一个程序过程中指定变量的值,可以通过以下方式:

按Alt+F11组合键打开VBA界面,依次单击“插入→模块”菜单命令,打开“模块2”,输入代码;再依次单击“视图→立即窗口”菜单命令,打开立即窗口;然后使用Debug.Print语句输入代码,按F5键运行宏,即可在“立即窗口”中显示出结果。如图1-21所示。

图1-21

1.3.5 本地窗口

“本地窗口”可以自动显示出所有在当前过程中的变量声明及变量值。在VBA界面中可以通过选择“视图→本地窗口”菜单命令来打开“本地窗口”。

“本地窗口”只有在中断模式下才可以显示相应的内容,并且只显示当前过程中变量或对象的值。当程序从一个过程转至另一个过程时,其内容也会相应地发生变化。操作步骤如下:

图1-22和图1-23分别是Sheet1工作表代码编辑窗口和模块代码编辑窗口中输入的代码,两段代码中均设置了Stop中断语句。

图1-22

图1-23

打开“本地窗口”,然后按F5键运行Sheet1中的代码,即可在“本地窗口”中显示出其中变量或对象的值,如图1-24所示。

图1-24

单击对象名称前的加号,或者双击对象名称,均可以展开该对象的属性和值,如图1-25所示。

图1-25

继续运行代码,即可迚入下一个中断模式下的代码过程,同时也可以在“本地窗口”中显示出相应的变量或对象的值,如图1-26所示。

单击“本地窗口”中右上角的省略号按钮,可以打开如图1-27所示的“调用堆栈”对话框,在其中可以快速切换过程。

图1-26

图1-27

1.3.6 监视窗口

“监视窗口”用于查看指定表达式(即监视表达式)的值。在VBA界面中可以通过选择“视图→监视窗口”菜单命令打开“监视窗口”。

在使用“监视窗口”之前,需要先添加监视的表达式,操作步骤如下:

图1-28所示是用于添加监视表达式的两段代码。

图1-28

打开“监视窗口”,然后依次单击“调试→添加监视”菜单命令(见图1-29),打开“添加监视”对话框。

图1-29

在“表达式”文本框中输入要监视的表达式“ActiveSheet”,选择监视表达式所在的过程和模块,然后选中“监视表达式”类型,如图1-30所示。

图1-30

“添加监视”对话框中各个选项的具体内容如下:

● 表达式:表示在过程中选择的变量名称。用户可以在文本框中手动输入,也可以事先在代码中选中。

● 上下文:表示需要监视的变量所在的过程及其所在的模块。

● 监视类型:表示变量的监视方式,包括“监视表达式”“当监视值为真时中断”和“当监视值改变时中断”3种类型。若选择“监视表达式”类型,则在“监视窗口”中显示表达式的值。若选择“当监视值为真时中断”类型,则在程序运行中,当表达式的值为真(不为0)时程序就进入中断模式。若选择“当监视值改变时中断”类型,则在程序运行中,一旦表达式的值改变,程序就进入中断模式。

单击“确定”按钮,即可为程序添加一个监视表达式。此时可以在“监视窗口”中监视“ActiveSheet”对象的返回值变化,如图1-31所示。

图1-31

继续添加监视表达式,在“添加监视”对话框的“表达式”文本框中输入要监视的表达式“X”,选择监视表达式所在的过程和模块,然后选中“监视表达式”类型。设置完成后,单击“确定”按钮,即可监视该变量的变化,如图1-32所示。

图1-32

将光标置于第二段代码中,依次单击“调试→逐语句”菜单命令或者按F8键,迚入逐语句调试。图1-33所示是当循环计数器X=5时“监视窗口”的返回值。

图1-33

1.3.7 工具箱

“工具箱”主要包含设计用户窗体时所需要的控件,如选定对象、标签、文字框、复合框、选项按钮、命令按钮、滚动条等工具控件,如图1-34所示。在VBA中进行用户窗体设计时才会出现该窗口。

图1-34

“工具箱”中各按钮的功能如表1-3所示。

表1-3 “工具箱”中的各按钮及其功能描述

1.3.8 对象浏览器

对象浏览器用于显示对象库和工程设计过程中的可用类、属性、方法、事件及常数变量,如图1-35所示。

图1-35

在对象浏览器中,各组成部分的主要作用如下:

● 工程/库框:显示活动工程当前所引用的库(其中的“<所有库>”选项可以一次显示出所有的库)。用户还可以通过选择“工具→引用”菜单命令,在打开的“引用”对话框中添加其他库。

● 搜索框:用于输入需要搜索的字符串。该框中包含最后四次输入的搜索字符串,直到关闭此工程为止。在键入字符串时,可以使用标准的Visual Basic通配符。

● 如果要查找完全相符的字符串,可以利用工程/库框和搜索框右侧的相关按钮来匹配查找,具体按钮功能如表1-4所示。

● 搜索结果:显示搜索字符串所包含工程的对应库、类及成员。

● 类列表:显示在工程/库框中选定的库或工程中所有可用的类。如果有代码编写的类,则这个类会以粗体方式显示。这个列表的开头都是<globals>,是可全局访问的成员列表。如果选择了类但没有选择特定的成员,会得到默认成员。默认成员以“*”符号或此成员特定的默认图标作为标识。

● 成员列表:按组显示出在类列表中所选类的元素,在每个组中再按字母排列。用代码编写的方法、属性、事件或常数会以粗体显示。

● 详细数据框:显示成员定义。详细数据框包含一个跳转,可以跳到该元素所属的类或库。某些成员可跳到其上层类。例如,如果详细数据框中的文本提到Command1声明为命令按钮类型,单击命令按钮则可以到“命令按钮”类。可以将详细数据框中的文本“[;Win;>或拖动<]”复制到代码编辑窗口中。

表1-4 对象浏览器的快捷菜单中各按钮及其功能描述 1KBNxebsQFdjA0CU2GgpcVGtNh7DoVHzkTvASt6lLD1ejDLawO8dIaSclNAfKrpZ

点击中间区域
呼出菜单
上一章
目录
下一章
×