- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基本程序结构
[目的要求]
了解常见几种程序结构;
掌握程序的流程控制;
掌握分支及循环语句使用。
[基本内容]
常见几种程序结构;
应用程序开发实例;
顺序流程控制;
分支及循环语句的编写。
[重点难点]
1.重点:
程序的流程控制。
2.难点:
分支及循环语句语法规则及应用。
[课时安排]
建议:2学时。
教学过程:
第10章 基本程序结构 1
10.1 分支结构 3
10.1.1 If…Then…End If语句 3
10.1.2 If…Then…Else…End If语句 4
10.1.3 If语句的嵌套 5
10.1.4 Select…Case语句 7
10.2循环结构 9
10.2.1 Do While…Loop循环 9
10.2.2 Do…Loop While语句 11
10.2.3 For…Next循环 13
10.2.4嵌套 14
10.3数组及应用 16
10.3.1 数组的概念 16
10.3.2 定义数组 16
10.4 编写访问数据库程序 17
10.4.1 ADO概述 17
10.4.2 访问记录集中的字段 19
10.4.3 记录操作 19
10.4.4 遍历记录集中的记录 20
10.5 VBA程序的调试 22
10.5.1错误类型 22
10.5.2使用On Error语句 22
10.5.3调试工具的使用 23
习题10 25
一、选择题 25
二、填空题 26
三、操作题 26
10.1 分支结构
程序的控制结构有顺序、分支与循环等3种类型。顺序结构指程序中的语句按照其出现的先后顺序执行。分支结构是根据某个条件是否满足决定下一步要执行的语句或者语句块。循环结构则是指根据特定的条件是否满足决定是否重复执行一条语句或者语句块。任何一个VBA程序都是事件驱动的。当一个事件发生时,其相应的程序代码一般都是上述三种结构的组合。
VBA提供了两组条件转移语句:
If…End If
Select Case
10.1.1 If…Then…End If语句
If…Then…End If语句根据条件是否成立决定某一个语句(块)是否执行。它的语法规定为:
If 条件表达式 Then
语句块
End If
若“条件表达式”的结果为真,则执行Then后面的语句块;否则不执行,直接跳过。其执行过程如图10.1所示。需要注意的是,在VBA程序中任何一个If语句都必须以一个End If语句结束。
注意:根据实际需求,构造好正确的条件表达式非常重要。在设计分支程序时,首先要关注条件及其判断,进一步确定判断结果对程序执行的影响。
图10.1 If…Then…End If语句流程图(还要重画)
例10.1编程。输入两个整数,找出其中的较大者并输出。
Dim A,B As Integer ‘声明整型变量A,B
A=Val(InputBox ( 请输入一个整数:))
B= Val(InputBox ( 请再输入一个整数:))
MsgBox A= A B= B
If A=B Then
MsgBox 较大的数是 A
End If
If AB Then
MsgBox 较大的数是 B
End If
说明:如果A是两个数中的大者,第1个If语句中的条件(A=B)成立,执行其后面的MsgBox语句;否则往下执行第2个语句。同样的,如果B是两个数中的大者,第2个If语句中的条件成立。
10.1.2 If…Then…Else…End If语句
有时候,需要根据某个条件成立与否,从两个(组)语句中选择一种执行,即二选一。如果条件成立,执行一组语句;如果条件不成立,则执行另外一组语句。这种情况下需要用到If…Then…Else…End If语句,其语法格式如下:
If 条件表达式 Then
语句块1
Else
语句块2
End If
如果“条件表达式”的值为真,则执行Then后面的语句块1;否则,执行Else后面的语句块2。 其执行过程如图10.2所示。
图10.2 分支If语句流程图
例10.2用If…Then…Else…End If语句重新编写例10.1的程序。
Dim NumA ,NumB,MaxNum As Integer
NumA=Val(InputBox (请输入第一个数值:)) ‘接受输入的第一个数字
NumB= Val(InputBox (请输入第二个数值:)) ‘接受输入的第二个数字
If NumA=NumB Then ‘判断变量NumA和NumB的大小
MaxNum = NumA
Else
MaxNum = Nu
文档评论(0)