欢迎来到天天文库
浏览记录
ID:41113794
大小:250.46 KB
页数:30页
时间:2019-08-16
《《VBA应用实例》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Access基础教程(第三版)第10章VBA应用实例第10章VBA应用实例10.1程序流程控制10.2文件10.3过程调用10.4计时器Timer10.5ADO数据库编程实例10.1程序流程控制10.1.1选择结构例1:窗体中有一名为Command1的命令按钮,其单击事件过程如下所示,试分析单击该命令按钮后消息框中的显示内容。实例:10_1PrivateSubCommand1_Click()a=75Ifa>60Thenk=1ElseIfa>70Thenk=2ElseIfa>80Thenk=3ElseIfa>90Thenk=4EndIfM
2、sgBoxkEndSub本例是块If语句的应用,执行的过程是:按条件出现的顺序依次判断每一个条件,发现第一个成立的条件后,则立即执行与该条件相对应的语句组,然后跳出该条件语句,去执行EndIf后的第一条语句。因为a=75,满足a>60的条件,所以k=1,EndIf后的第一条语句为MsgBoxk,所以消息框中显示的结果为1。10.1程序流程控制例2:窗体中有一名为Command1的命令按钮,其单击事件过程如下所示,试分析单击该命令按钮后消息框中的显示内容。实例:10_2PrivateSubCommand1_Click()A=75IfA>6
3、0ThenI=1IfA>70ThenI=2IfA>80ThenI=3IfA>90ThenI=4MsgBoxIEndSub本例是四个行If语句的顺序结构。与标准的If…Then…EndIf结构相比较,缺少了EndIf,但这在VBA中是允许的,所以判断的过程也应该是顺序的,执行过程应该是A=75,A大于60所以I=1;A大于70所以I=2;A不大于80,所以I值不发生变化;A值不大于90,所以I值不发生变化;最终消息框中显示的结果应为I的最后值2。10.1程序流程控制例3:分析如下窗体单击事件过程的显示结果。实例:10_3PrivateSu
4、bForm_Click()a=1Fori=3To1Step-1SelectCaseiCase1,3a=a+1Case2,4a=a+2EndSelectNextiMsgBoxaEndSub本例是SelectCase选择结构和For循环结构的应用集合,分析的重点在于SelectCase的选择分支,分支一Case1,3,也就是说当i值为1或3时执行的操作为a=a+1;分支二Case2,4,也就是说当i值为2或4时执行的操作为a=a+2。a的初值为1,循环变量i的变化过程是由3到1,那么在整个循环过程中,要执行两次a=a+1的操作和一次a=a+
5、2的操作,所以最终消息框显示的结果为5。10.1程序流程控制例4:试用If…Then…EndIf选择结构实现三个数由大到小的顺序排列。要求在如图10.1所示的“排序”窗体中名为“text1”、“text2”和“text3”的三个文本框中输入三个数,单击“排序”(名为Command1)按钮后,三个数按由大到小的顺序排列;单击“重新输入”(Command2)按钮后,清空文本框,以便于重新输入。结果如图10.2所示。图10.1-10.2实例:10_4解题思路:要想将三个数进行排序,首先要将这三个数中任意两个数进行比较,如果比较过程中较大数在较
6、小数之前,则不需要改变它们的顺序,否则需要将两个数的位置进行交换。对于三个数排序要进行(3×2)/(2×1)次比较。本例中使用了去掉前导空格函数LTrim()、类型转换函数Val()和Str()及对象获得焦点的方法SetFocus;同时在做较大数和较小数的置换过程使用了中间变量t,这是本例中需要注意的。三个If…Then…EndIf之间是顺序结构,实现了三次比较的过程。10.1程序流程控制例5:试用SelectCase选择结构实现一个收取货物运费的程序。要求:在固定两地之间,收取货物运费的原则是:10吨以内(不含10吨)的货物,每吨收取
7、运费100元;10吨至50吨(不含50吨)的货物,每吨收取运费70元;50吨以上的货物,每吨收取运费50元。在如图10.3所示的“计算运输费用”窗体中“Weight”文本框(关联标签为“货物重量”)内输入货物重量后,单击Command1(标题为“计算”)按钮,在“Cost”文本框(关联标签为“运输费用”)中显示出运输费用;单击Command2(标题为“清除”)按钮,清空两个文本框。结果如图10.4所示。图10.3-10.4实例:10_5解题思路:这是一个最为简单的多路分支选择结构实例,只需要根据货物重量的不同,选择不同运费计算公式即可。
8、本例中使用了去掉前导空格函数LTrim()、类型转换函数Val()和Str()及对象获得焦点的方法SetFocus;同时在显示计算结果的过程中使用了连接运算符“+”(实现字符串的连接),这是本例中需要注意的
此文档下载收益归作者所有