1.VBA编程基础-常量、变量、运算符和表达式.ppt

上传人:本田雅阁 文档编号:2128736 上传时间:2019-02-19 格式:PPT 页数:37 大小:148.51KB
返回 下载 相关 举报
1.VBA编程基础-常量、变量、运算符和表达式.ppt_第1页
第1页 / 共37页
1.VBA编程基础-常量、变量、运算符和表达式.ppt_第2页
第2页 / 共37页
1.VBA编程基础-常量、变量、运算符和表达式.ppt_第3页
第3页 / 共37页
亲,该文档总共37页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《1.VBA编程基础-常量、变量、运算符和表达式.ppt》由会员分享,可在线阅读,更多相关《1.VBA编程基础-常量、变量、运算符和表达式.ppt(37页珍藏版)》请在三一文库上搜索。

1、全国计算机等级考试 Access数据库程序设计(二级),万红波 烟台大学,VBA编程基础,常量、变量、运算符和表达式; 流程控制语句; 过程调用和参数传递; 常用操作的实现方法; VBA的数据库编程;,1.1 数据类型,程序的主要目的是处理各种数据,现实存在的数据是各种各样的,比如有整数、文本数据等等; 在表的创建过程中,涉及到字段的数据类型,字段的数据类型决定了字段可以存储什么样的数据;字段的数据类型是Access内部的数据类型; VBA中也定义了各种数据类型,用来在程序中存放不同的数据;,1.1 数据类型,1.1 数据类型-变体数据类型,变体类型除了定长字符串类型、用户自定义类型外,可以包

2、含其他任何类型的数据; 如果没有显式声明,变量的默认类型是变体类型;,1.2 变量,变量就是存放数据的容器,在程序运行中存放数据,并且数据可以发生变化; 变量的名字由字符、数字、下划线(_)构成,变量命名大小写不“敏感”;,1.2 变量显式定义变量,显式变量:先定义变量,后使用 Dim 变量名 As 变量类型 Dim ii As Integer 定义ii为整型变量 Dim s As String*10 定义s为定长字符串 Dim t 没有As部分,默认为Variant类型 可以加入Option Explicit语句,强制要求所有变量必须先定义后使用;,1.2 变量隐式变量,变量没有直接定义,借

3、助将一个值指定给变量名的方式来建立变量; MyVar=532 默认是Variant类型,值为532 可以使用类型说明字符来指明隐含变量的类型 MyVar%=23 MyDouble#=23.34,1.2 变量作用域局部范围,变量定义在模块的过程的内部,Private Sub OK_Click() Dim i As Integer i = 9 MsgBox “i=“ & i End Sub,1.2 变量作用域模块范围,变量定义在模块的所有过程之外的起始位置,模块的所有子过程和函数都可以使用;,Dim i As Integer Private Sub OK_Click() i = 9 MsgBox

4、“i=“ & i End Sub,1.2 变量作用域全局范围,变量定义在标准模块的所有过程之外的起始位置,用Public . As 定义的变量属于全局范围; Public i As Integer 全局范围的变量,在类模块和标准模块中都可以访问; 在类模块中访问标准模块中的全局变量 标准模块名.全局变量名,1.3 数据类型之间的转换,把数据转换成特定的类型,Dim bb As Boolean bb = CBool(“true“),1.4 用户自定义数据类型,可以建立包含一个或多个VBA标准数据类型的用户自定义数据类型 用户自定义类型的声明,必须放在标准模块中,Type 数据类型名 As As

5、End Type,1.4 用户自定义数据类型例子,在标准模块asd中,声明用户自定义类型 Public Type Student txtNo As String * 7 txtName As String txtSex As String * 1 txtAge As Integer End Type,在类模块中,定义用户自定义类型变量 Private Sub OK_Click() Dim stu As asd.Student stu.txtNo = “2929333“ stu.txtName = “张三“ stu.txtSex = “男“ stu.txtAge = 20 MsgBox “stu

6、.txtName“ & stu.txtName End Sub,1.4 用户自定义数据类型例子,在类模块中,定义用户自定义类型变量 Private Sub OK_Click() Dim stu As asd.Student With stu .txtNo = “2929333“ .txtName = “张三“ .txtSex = “男“ .txtAge = 20 End With MsgBox “stu.txtName“ & stu.txtName End Sub,1.5 数组,数组:包含一种数据类型的一组数据 Dim 数组名(下标下限 to 下标上限) 缺省情况下,数组下标下限为0,可以使用

7、“Option Base 1”将数组的默认下标下限由0改为1 Dim NewArray(10) As Integer NewArray(0) NewArray(10),1.5 数组,二维数组的定义 Dim aa(5,5) As Integer aa(0,0) a(0,1) a(0,2).a(0,5).a(5,5) 动态数组 先用Dim显式定义数组但不指明元素数目,然后用ReDim关键字来决定元素数目; Dim MyArray() As Long . ReDim MyArray(10),练习题,以下哪个选项定义了10个整型数构成的数组,数组元素为NewArray(1)至NewArray(10)

8、A) Dim NewArray(10)As Integer B) Dim NewArray(1 To 10)As Integer C) Dim NewArray(10) Integer D) Dim NewArray(1 To 10) Integer,练习题,语句Dim NewArray(10) As Integer的含义是 A)定义了一个整型变量且初始值为10 B)定义了10个整数构成的数组 C)定义了11个整数构成的数组 D)将数组的第10元素设置为整型,1.6 引用窗体或报表中控件的属性值,引用窗体或报表中控件(通用方式) Forms!窗体名称!控件名称.属性名称 Reports!窗体名

9、称!控件名称.属性名称 引用自身窗体上的控件 Me.控件名称.控件属性,定义控件类型变量 Dim txtName As Control 用Set引用控件 Set txtName = Forms!testForm!txtName MsgBox txtName.Value txtName.Value = “Test“,1.7 符号常量,Const 符号常量名称=常量值 定义全局符号常量,在标准模块中 Global Const PI=3.1415 Public Const PI=3.1415,1.8 系统常量、内部常量,Access启动时就建立的系统常量 比如:True,False,Yes,No,O

10、ff,Null 内部常量:VBA提供的一些预定义的内部符号常量;,MsgBox “提示信息“, vbInformation, “窗口标题“ DoCmd.OpenReport “教师“, acViewPreview,1.9 运算符,VBA中,使用各种运算符来完成对数据的运算和处理 算术运算符 关系运算符 逻辑运算符 连接运算符,1.9 运算符算术运算符,加法 + 减法 - 乘法 * 除法 / 整数除法 求模运算 Mod 乘幂 ,Dim MyValue MyValue = 10 Mod 4 MyValue = 10 Mod 2 MyValue = -10 Mod 2 MyValue = -12.7

11、 Mod -5 MyValue = 3 2 MyValue = 10.2 4.9 MyValue = 10 3,整数除法,操作数的小数部分直接舍去,如果结果有小数也要舍去; 求模运算Mod,操作数的小数部分四舍五入后变成整数再运算;余数的正负跟被除数相关;,1.9 运算符关系运算符,相等 = 不等 大于 小于 = 小于等于 =,Dim MyValue MyValue = (10 4) MyValue = (#8/8/2006# = #9/8/2008#),比较运算的结果为逻辑值:True(真)或False(假),1.9 运算符逻辑运算符,逻辑运算符对两个逻辑量进行逻辑运算 AND 逻辑与 OR

12、 逻辑或 NOT 逻辑非,Dim MyValue MyValue = (10 4 And 11 2) MyValue = (10 2) myvlaue = Not (4 = 3),1.9 运算符连接运算符,字符串连接运算符 & 强制将两个表达式做字符串连接 + 当两边的表达式都是字符串的时候,才将两个字符串连接成一个字符串,Dim s As String Dim ss As String s = 2 & 3 ss = 2 + 3,1.10 运算符的优先级,优先级: 算术运算符连接运算符关系运算符逻辑运算符 算术运算符 和逻辑运算符的优先级,低,高,1.11 常用标准函数,VBA提供了大量的标准

13、函数,可以在程序中调用; 数学函数 字符串函数 日期/时间函数 类型转换函数,1.11 常用标准函数数学函数,取整函数 Int() Fix() 参数为正数时,两者相同;参数为负数时候,Int返回小于等于参数值的第一个负数,Fix返回大于等于参数值的第一个负数;,Dim a, b As Integer a = Int(-3.23) b = Fix(-3.23) MsgBox “a=“ & a & “b=“ & b,1.11 常用标准函数数学函数,随机数函数 Rnd(),产生大于等于0,小于1的单精度数; 数值表达式的值0,每次产生随机数;默认值 数值表达式的值=0,产生最近生成的随机数;,练习题

14、,有如下语句: s=Int(100*Rnd) 执行完毕后,s的值是 A) 0,99的随机数 B) 1,99的随机数 C) 0,100的随机数 D) 1,100的随机数,1.11 常用标准函数字符串函数,字符串检索函数 InStr(Start,Compare) Start和Compare都是可选参数; 检索Str2在字符串Str1中最早出现的位置,字符串中第一个字符的位置为1;,Dim str1, str2 As String Dim i As Integer str1 = ““ str2 = “ytu“ i = InStr(str1, str2) MsgBox i,1.11 常用标准函数字符串

15、函数,字符串长度函数 Len() 返回字符串中所包含的字符的个数,对于定长字符串来说,返回定义时的长度;,Dim str1 As String * 10 Dim str2 As String str1 = “abcd“ str2 = “abcd“ Dim i1, i2 As Integer i1 = Len(str1) i2 = Len(str2),1.11 常用标准函数日期/时间串函数,Date 返回当前系统日期 Time 返回当前系统时间 Now 返回当前系统日期和时间,Dim d As Date d = Now MsgBox d,1.11 常用标准函数类型转换函数,字符和字符的ASCII码之间的转换 Asc():将字符串中的第一个字符转换为该字符的ASCII码; Chr():返回ASCII码对应的字符; 数字和字符串之间的相互转换 Str():转换成字符串; Val():将数字字符串转换成数值型数字;,练习题,从字符串s中地2个字符开始获得4个字符的字符串函数是 A) Mid(s,2,4) B) Left(s,2,4) C) Right(s,4) D) Left(s,4),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1