VBA程序设计基础.docx
- 文档编号:3100137
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:23
- 大小:631.15KB
VBA程序设计基础.docx
《VBA程序设计基础.docx》由会员分享,可在线阅读,更多相关《VBA程序设计基础.docx(23页珍藏版)》请在冰豆网上搜索。
VBA程序设计基础
第九章程序设计基础
教学目标:
●理解什么是程序
●掌握程序设计的基本方法
●编写并调试简单的VBA应用程序
●编写简单的事件驱动程序
●会在VBA应用程序中访问数据库
教学过程:
一、程序设计概述
做一件事,计算机可以把它分解为一系列的基本操作步骤,通过程序设计语言的基本语句来完成,这就是程序。
程序设计方法主要有两种:
面向过程的结构化程序设计方法和面向对象的程序设计方法。
前面所学的窗体对象设计就是一种面向对象的设计方法。
在Access中编写程序使用的语言是VisualBasicforApplication,简单VBA。
首先看一下VBA编写的几个简单程序。
例9-1在窗体上放置一个命令按钮和一个文本框,单击命令按钮后在文本框中显示“VBA程序设计”
步骤如下:
1、打开数据库,切换到“窗体”对象下,双击“在设计视图中创建窗体”,
2、添加文本框,在对应的属性窗口“全部”选项卡的第一行设置名称为“文本1”,添加命令按钮,名称为“命令0”
3、打开“按钮”的属性窗口,在“事件”选项卡下的“单击”栏选“事件过程”,单击后面的按钮,进入编辑窗口:
4、在编辑窗口中输入如下程序:
(其实窗口中已有,所以我们只要在中间添加一句
PrivateSub命令0_Click()
文本1.Value=“VBA程序设计”
说明:
1、程序的开头“PrivateSub”和结束“EndSub”是一个固定搭配,表示这是一个过程,程序中的“命令0_Click()”表示这个程序在“命令0”按钮被单击时执行。
2、在编辑窗口已有程序的开头和结尾,所以我们只要输入中间的一句:
文本1.value=“VBA程序设计”
3、注意程序中引用的“命令0”,“文本1”一定要和窗体中的按钮、文本框名称一致。
EndSub
5、关闭程序编辑窗口,切换到窗体视图,则单击命令按钮后,“VBA程序设计”即显示在文本框中。
思考在上面的窗体中再添加一个按钮,单击则清除文本框中显示的文本,应该怎样操作?
例9-2在窗体中有一个命令按钮和两个文本框,用户在第一个文本框中输入一个正整数,当单击该按钮时计算出这个正整数的阶乘,并在第二个文本框中显示计算结果。
步骤:
1、新建一个窗体,拖入两个文本框和一个命令按钮,名称为文本1、文本2、命令0(这三个控件名称后面程序中要引用,所以一定要命名!
)
2、选中按钮,打开其属性窗口,在“事件”选项下的“单击”一栏,选“事件过程”,单击后面的按钮,输入如下程序:
说明:
1、程序中变量在使用前要先定义,这里计算阶乘,用到的只能是整数,所以定义a、b、c为整型变量。
(见中间程序部分的第一句:
DimaAsInteger)
2、单引号后面的是程序的注释语句,只起说明的作用,程序并不执行它。
不输入这些语句,程序照样正常运行。
(见绿色部分)
3、输入程序时可以用小写字母输入单词,但每一个关键词的第一个字母计算机会自动变成大写。
(见程序中蓝色部分)
4、程序一般一句一行,也可多个句子写在一行,中间用冒号隔开;如果一句太长,需要分成多行,可在上一行的最后加下划线“_”,系统就会把上下两行连在一起做为一个语句。
3、关闭程序编辑窗口,切换到窗体视图,我们输入5,单击“计算”按钮,则会显示120,
(实际上,5!
=1×2×3×4×5,计算结果是120)
二、程序的输入输入出语句
(1)InputBox函数
格式:
InputBox字符串1,[字符串2],[字符串3]
功能:
显示一个输入对话框,等待用户输入信息或按下按钮。
在按钮事件发生后返回键盘输入到文本框中的内容,返回值的类型为文本类型,
说明:
对话框中的提示信息是字符串1,对话框的标题栏是字符串2,字符串3是输入对话框中的默认值。
后两个字符串是可选项,可不选。
例9-3在窗体的命令按钮中分别加入以下代码,单击按钮后即可看出输入对话框的不同。
PrivateSubCommand0_Click()
InputBox"请输入学号","学号输入框","2009"
EndSub
改成下面程序后的输入对话框:
PrivateSubCommand0_Click()
InputBox"请输入学号","学号输入框"
EndSub
改成下面程序后的输入对话框:
PrivateSubCommand0_Click()
InputBox"请输入学号"
EndSub
(2)MsgBox函数
格式:
MsgBox字符串1,[按钮参数],[字符串2]
功能:
出现一个消息框,字符串1为消息框中的提示信息,按钮参数则决定了消息框中按钮的类型(见下面按钮参数表),字符串2为消息框的标题栏上信息。
按钮参数表:
常数
值
按钮类型
vbOKOnly
0
只显示OK按钮
vbOKCancel
1
显示OK及Cancel按钮
vbYesNoCancel
3
显示Yes、No、Cancel按钮
vbQuestion
32
显示WarningQuery图标
vbExclamation
48
显示WaringMessage图标
vbInformation
64
显示InformationMessage图标
vbDefaultButton1
0
第一个按钮是缺省值
vbDefaultButton2
256
第二个按钮是缺省值
vbDefaultButton3
512
第三个按钮是缺省值
例9-4在窗体上添加一个命令按钮,当单击该按钮后,显示一个对话框:
(1)提示消息为“您确定要退出吗?
”。
(2)包含“确定”和“取消”两个命令按钮以及一个询问图标,默认选择“确定”按钮,(3)对话框的标题栏为“确认退出”
分析:
生成对话框需要用MsgBox函数,包含“确定”和“取消”按钮,对应参数为1(见上表);包含一个询问图标,对应参数为32;默认选择是“确定”按钮(这里的第一个就是“确定”按钮),对应参数是0,根据题目要求对应的语句应为:
MsgBox“您确定要退出吗?
”,1+32+0,“确认退出”
步骤:
1、新建一个窗体,添加一个命令按钮,
2、在命令按钮的属性窗口中切换到“事件”选项下,在“单击”一栏中选“事件过程”,单击这一栏后面的按钮,出现VBA编程窗口,
3、在程序开头和结尾之间添加一句:
MsgBox“您确定要退出吗?
”,1+32+0,“确认退出”,见下图:
4、切换到窗体视图,单击命令按钮,弹出一个消息框,如图:
说明:
1、使用参数进行组合时不能互相矛盾,例如不能同时显示“确定”‘“取消”两个按钮和“是”、“否”、“取消”三个按钮。
2、上面的组合参数可以求和后表示,也可用按钮参数表中对应的常数表示,下面几种形式均可:
MsgBox“您确定要退出吗?
”,1+32+0,“确认退出”
MsgBox“您确定要退出吗?
”,33,“确认退出”
MsgBox“您确定要退出吗?
”,vbOKCancel+vbQuestion+vbDefaultButton1,“确认退出”
3、当用户点击了不同的按钮,我们可以根据按钮的返回值来判定用户选择了哪个按钮,按钮返回值如下表:
MsgBox返回值
常数
值
选择按钮
vbOK
1
选择了OK
vbCancel
2
选择了Cancel
vbYes
6
选择了Yes
vbNo
7
选择了NO
例9-5在窗体上添加一个命令按钮,当单击该按钮后接受用户输入的三角形三边长,并求出周长后输出
步骤:
1、新建一个窗体,添加一个命令按钮command0
2、
PrivateSubCommand0_Click()
'定义a,b,c,s为单精度变量,a,b,c为三边长,s为周长
DimaAsSingle,bAsSingle,cAsSingle,sAsSingle
'利用输入对话框接受键盘输入的值,并用Val()函数转把字符串转换成数值
a=Val(InputBox("请输入三角形的第一个边长:
"))
b=Val(InputBox("请输入三角形的第二个边长:
"))
c=Val(InputBox("请输入三角形的第三个边长:
"))
s=a+b+c
MsgBox"三角形的周长是:
"&s
EndSub
在命令按钮的属性窗口中为其添加代码:
如图
3、切换到窗体视图,单击命令按钮,在弹出的对话框中依次输入三个值,例如3、4、5
则弹出一个消息框,显示三边长的结果:
三、赋值语句
格式:
变量名=表达式
功能:
把右边表达式的值给左边的变量。
例如x=2+1,x=x+1
说明:
1、变量要先定义才能使用
2、赋值号两边的数值必须兼容,即数据类型尽量一致。
否则容易出错
例如:
DimxasInteger,yasSingle,zasString‘定义x为整数,y为单精度数,z为文本字符
X=3.5
Y=4
Z=”ACCESS”
第二句x定义为整数,却给了个小数3.5,此时x会取4,
第三句y是单精度数,给了整数4,但系统可以转换成4.000再给变量y,所以是合法的。
第四句z是字符变量,所以等式右边只能赋值一个字符串。
3、等号左边只能有一个变量,右边可以是含这个变量的表达式,
例如x=x+1正确,但x+1=x就不正确了。
4、赋值号右边的计算结果必须在左边变量的表示范围之内,否则系统会提示出错,
例如:
DimxasInteger‘定义x为整型变量
x=40000
整型变量x最大只能取值32767,所以40000就超出了整型数据表示的最大值,程序运行到这一句时,系统会提示出错。
5、变量被两次赋值,则新值冲掉旧值,
例如
x=2
x=3
x=x+2
x=?
例9-6在窗体上添加一个命令按钮,当单击该按钮后接受用户输入的长方形的长和宽,计算其面积并输出计算结果。
步骤:
1、新建窗体,并在上面添加一个命令按钮,按钮名称为“命令0”,在按钮上添加代码如下:
PrivateSub命令0_Click()
'定义变量a,b,s为单精度变量,a,b表示长方形的长和宽,S表示面积
DimaAsSingle,bAsSingle,sAsSingle
'通过InputBox函数输入边长,同时将文本型数据转换成数值型
a=Val(InputBox("请输入长方形的第一个边长:
"))
b=Val(InputBox("请输入长方形的第二个边长:
"))
s=a*b
MsgBox"长方形面积为:
"&s
EndSub
2、切换到窗体视图,单击命令按钮,会出现一个输入框,要求你输入长方形的两个边长,输入边长后,单击“确定”按钮,即弹出一个消息框,显示长方形的面积。
注意:
输入程序代码时,要在英文半角下输入,各关键词之间要有空格(“英文半角”输入状态下的空格!
)
四、顺序结构
在高级程序设计语言中,其语句执行都有一定的先后顺序,总体可以分为顺序结构语句(按语句的先后顺序执行)、条件分支语句(根据条件的成立来确定执行哪一个分支)、循环语句(某个条件成立时反复执行某一段程序)。
顺序结构是最简单的一种结构,这种结构让语句按先后顺序执行,以完成简单的功能。
A=2
B=3
T=A’把A的值放到T中,则T=2
A=B’把B的值放到A中,则A=3
B=T’把T的值给B,则B=2
例9-7在窗体上放一个命令按钮和两个文本框,在两个文本框中分别输入两个不同的值,单击命令按钮后交换这
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBA 程序设计 基础
![提示](https://static.bdocx.com/images/bang_tan.gif)