靠谱电子书 > 经管其他电子书 > excel_vba_编程教程(完整版) >

第11部分

excel_vba_编程教程(完整版)-第11部分

小说: excel_vba_编程教程(完整版) 字数: 每页4000字

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



法基本和给单元格或区域取名的方法相同。选中某个控件;再在位于公式栏上的〃名字〃编辑框输 
入控件名字。这样就给控件更改了名字。  

    3。6 使用用户窗体   

    如果希望创建专业级的应用程序;并且方便用户输入数据;那么应该使用用户窗体。用户窗 
体可以作为程序的对话框和窗口。向用户窗体添加控件基本类似于向工作表添加控件;然而第一 
步要创建一个用户窗体。这可以通过 VBA 编辑器实现。具体按以下步骤操作:  
    1)打开〃HOUR3〃工作簿;选择〃工具〃…〃宏〃…〃VBA 编辑器〃;打开 VBA 编辑器。  
    2)在 VBA 编辑器中选择工具栏上的〃插入用户窗体〃按钮或者选择〃插入〃菜单;从下拉菜单 
中选择〃用户窗体〃   
    现在;VBA 编辑器中出现一个名为〃USERFORM1〃的窗体;〃控件工具箱〃同时出现;在其中有许 
多已经熟悉的控件;另外还有一些新的控件。   
    这些新的控件是:  
    A)切换按钮:该控件如果被选中;那么会保持被按下的状态。如果再次单击它就恢复为没有 
按下的状态。EXCEL工具栏中有几个这样的按钮;例如:〃全屏显示〃;〃加粗〃;〃下划线〃以及〃窗体〃 
工具栏中的〃切换网格〃等。  
    B)选项卡条(TabStrip):它是包含多个选项卡的控件。通常用来对相关的信息进行组织或分 

                                          6 

… 页面 23…

Visual BASIC 程序设计网络教学                                                橄榄树 
整                                                                                理 
类。例如:你也许希望用选项卡条来显示各个地区的销售信息;可以给每个地区设置一个选项卡。 
在默认时;选项卡包含两页;分别叫做TAB1和 TAB2;可以添加更多的选项卡。  
    C)多页:外观类似选项卡条;是包含一页或多页的控件。选项卡条给人相似的外观;而多页控 
件的各页包含各自不同的控件;有各自不同的布局。多页的例子很多;例如:〃设置控件格式〃对话 
框和〃工具〃菜单中的〃选项〃对话框。以及〃格式〃菜单中的〃单元格。。。〃对话框。  
       D) 图 像 控 件 : 它 允 许 向 窗 体 上 放 置 图 片 。 图 片 格 式 须 
为  :*。bmp;*。cur;*。gif;*。ico;*。jpg;*。wmf。   
    F)RefEdit:这是工具箱中默认情况下的最后一个控件。它外观象文本框,通过这个控件可 
以将用户窗体折叠起来,以便选择单元格区域。还记得在使用 fx〃粘贴函数〃时的情况吗?   
    通过实践,我们会逐渐掌握每个控件的特性,这的确需要花时间,但不必死记硬背。   
    在对用户窗体设计得满意时,可以对其进行预览,方法是在 VBA 编辑器中选择该窗体,单 
击〃运行〃菜单中的三角符号〃运行子过程/用户窗体〃,三角符号在 VBA 工具栏上也可能看得到, 
旁边是一个垂直的等于符号,最右边是个小正方形符号,它们类似于录音机上的按钮。运行窗 
体的另一个方法是按 F5键。  
    小结:学习完本学时后,我们具备了用于程序界面设计的基本知识。我们对控件不在感到 
陌生,也明白如何向工作表和窗体添加控件;但控件的内容很多;需要边用边理解。此后,我们将 
从界面转移到学习编写代码,并最终将二者融合。让我们准备好学习编程吧!  

    3。7 疑难解答  

    问题 1。怎样决定控件的位置?如何选择添加到工作表还是添加到用户窗体?  
    解答:这完全取决于个人的爱好和应用程序的用户。如果用户对 EXCEL 非常熟悉;那么他们 
也许更希望以工作表的方式操作。在这种情况下不妨直接在工作表上创建控件;如果你的用户对 
EXCEL 不熟悉或者你需要给用户一个专业的界面感觉;那么应该使用用户窗体。  
    问题 2。什么情况下该用选项卡条而不是多页控件?  
    解答:如果每一页具有相同布局;则应选择选项卡条;否则应该选择多页。  
    本节作业  
    1。思考:  
    1)列举两种可以让用户进行多选一的控件。  
    2)如何将控件与单元格链接起来。  
    2。判断:  
    1)只有在 VBA 编辑器中才能添加用户窗体。  
    2)在 VBA 编辑器中看到的窗体网格线在运行时会自动显示。  
    3。填空:( )是显示静态文本的控件。   

                            第四课 理解变量和变量的作用  

    4。1 代码存在的位置:模块   

    VBA 代码必须存放在某个位置,这个地方就是模块。有两种基本类型的模块:标准模块和 
类模块。模块中的每个过程或者是函数过程,或者是子程序概念。本课的最后部分将讨论函数过 
程和子程序的区别。   
    新术语:  
    模块:它是作为一个单元保存在一起的 VBA 定义和过程的集合。  
    类模块:VBA 允许你创建自己的对象,对象的定义包含在类模块中。  
    你的大部分工作集中在标准模块中(简称为模块)当录制宏时如果不存在模块,EXCEL 自 
动创建一个。EXCEL 和 VBA 不关心代码存放在哪一个模块中,只要代码存在于打开的工作簿中 
即可。  

    4。2 对模块的概览   

    过程被定义为 VBA 代码的一个单元,过程中包括一系列用于执行某个任务或是进行某种计 
算的语句。工作簿的每个过程都有唯一的名字加以区分。   
    有两种不同的过程:子程序和函数过程。子程序只执行一个或多个操作,而不返回数值。 
当录制完宏查看代码时,所看到的就是子程序。宏只能录制子程序,而不能录制函数过程。一 
个子程序的例子如清单 4…1 所示。   
程序清单 4…1 子程序的例子   

                                          7 

… 页面 24…

Visual BASIC 程序设计网络教学                                                 橄榄树 
整                                                                                 理 
Sub cmdSmallFont_Click()  
With Selection。Font  
。Name=〃Arial〃  
。FontStyle=〃Regular〃  
。Size=16  
End With  
End sub   
    上面列出的过程实际上是一个事件过程。通过它的名字,就可以知道这是一个事件过程。 
这个过程的名字是由一个对象的名字 CmdSmallFont 和一个事件的名字 Click 组成的,两者之间 
用下划线分开。如果还不明白,可以告诉你,CmdSmallFont 是一个命令按钮的名字。也就是说, 
当单击这个命令按钮时,就会运行这个事件过程。   
    函数过程通常情况下称为函数,要返回一个数值。这个数值通常是计算的结果或是测试的 
结果,例如 False 或 True。正如前面所说,可以用 VBA 创建自定义函数。实际上可以在工作表 
上使用你创建的函数。程序清单 4…2 是一个计算价格的 10%为运费的简单例子。   
程序清单 4…2 简单的用户定义函数示例。   
Public Function Shipping(Price)  
Shipping = Price * 0。1  
End Function   
    请注意,这个函数使用一个参数(Price)。子程序和函数都可以使用参数。不论 Price 的值 
是多少,它都将决定运费额。Price 可以是数字和单元格引用。函数返回计算出来的运费,这 
个函数可以用在单元格中。   
A B   
1 Price 100  
2 Shipping =shipping(B1)  
    4。2。1 创建过程   
    创建第一个过程需要两个基本步骤。首先,需要向工作簿中添加一个模块。接着需要向模 
块中添加一个工程。对于创建的每一个应用程序,只需添加一次模块。可以使用多个模块,但 
这是不必要的。某些开发者喜欢使用多个模块,以便根据他们的目的或者窗体对过程进行组织。 
在本练习中,创建的过程只显示一个消息框。   
    在本练习中创建的过程只显示一个消息框。在本练习中使用 Msgbox是为了提供一个可见的 
例子,虽然我们还没有介绍过 Msgbox 语句,但是在本例中将使用它。要创建该过程,请按如下 
步骤进行:   
    1)打开一个新工作簿。  
    2)选择〃工具〃…〃宏〃…〃Visual Basic 编辑器〃,打开 VBA编辑器窗口。  
    3)在‘VBA 编辑器的左面,可以看到〃工程资源管理器〃窗口。在工程资源管理器窗口的 
〃Thisworkbook〃上单击鼠标右键,选择〃插入〃…〃模块〃,这样就将一个模块添加到应用程序中了。 
(如果你没有看见〃工程资源管理器〃窗口,可以按 Ctrl+R)  
    4)选择〃插入〃〃过程〃,显示〃添加过程〃对话框。  
    5)输入〃第一个工程〃作为过程名字。在〃类型〃分组框中,确认选择了〃子程序〃。单击〃确 
定〃按钮。这样一个新的过程就添加到模块中了。可以在模块中看到以 Public Sub 第一个过程 
 ()开始,以 End Sub结束的语句结构。  
    6)在过程中插入光标,输入以下语句并回车:  
Msgbox 〃这是我的第一个过程〃  
在输入 Msgbox 后,会自动弹出一个消息框告诉你有关这条命令的信息,称之为自动列表技术。 
输入完成的过程如下所示:  
Public Sub 第一个过程()  
Msgbox 〃这是我的第一个过程〃  
End Sub  
    VBA 对子程序和函数有如下的命名规则:  
    * 名字中可以包含字母数字和下划线。  
    * 名字中不能包含空格句号惊叹号,也不能包含字符@ &  #。  
    * 名字最多可以包含 255 个字符。  
    

                                          8 

… 页面 25…

Visual BASIC 程序设计网络教学                                                   橄榄树 
整                                                                                   理 
    4。2。2 运行宏   
    创建这个过程后,可以运行一下。运行一个过程有几种方法:可以直接使用〃运行〃菜单,〃 
运行子程序/用户窗体〃工具栏按钮或按下 F5 键。要运行一个过程,可以按照如下步骤:   
    1)单击〃运行子程序/用户窗体〃工具栏按钮,过程执行并显示一个消息框。  
    2)单击消息框之中的〃确定〃按钮,关闭该消息框。  

    4。3 保存对模块所做的改变   

    要保存新过程;需要保存过程所驻留的工作簿。可以用 VBA 编辑器保存工作簿。具体步骤如 
下:   
    1)选择〃文件〃…〃保存工作簿〃。因为本工作簿还没有保存过;所以要给它命名。  
    2)输入〃HOUR4〃作为文件名并按回车键;则工作簿和模块与过程都保存下来了。 第四课 理 
解变量和变量的作用  
Excel Home   

    4。4 变量   

    变量是用于临时保存数值的地方。每次应用程序运行时;变量可能包含不同的数值;而在程 
序运行时;变量的数值可以改变。   
    为了说明为什么需要变量;可以按照如下步骤创建一个简单的过程:   
    1)创建一个名为〃你叫什么名字〃的过程。  
    2)在过程中输入如下代码:  
    Inputbox 〃输入你的名字:〃  
    现在不要担心 inputbox 语句的语法;将在第六学时中了解到有关这条命令的更多信息。  
    3)按下F5 键运行过程;这时会显示一个输入框;要求输入你的名字。  
    4)输入你的名字并按〃确定〃按钮;则结束该过程。   
    你输入的名字到那里去了?如何找到用户在输入框中输入的信息?在这种情况下;需要使用 
变量来存储用户输入的结果。  
    4。4。1 变量的数据类型   
    使用变量的第一步是了解变量的数据类型。变量的数据类型控制变量允许保存何种类型的 
数据。表 4…1 列出了 VBA 支持的数据类型;还列出了各种类型的变量所需要的存储空间和能够存 
储的数值范围。   
数据类型          存储空间        数值范围  
Byte              1 字节            0 … 255  
Booleam            2 字节          True 或者False  
Integer            2 字节          …32768 … 32767  
Long(长整型)        4字节        …2147483648 … 2147483647  
Single              4字节          负值范围:…3。402823E38 … …1。401298E…45  
                                     正值范围:1。401298E…45 … 3。402823E38  
Double  

返回目录 上一页 下一页 回到顶部 0 0

你可能喜欢的