版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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 i=
4、& 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 . End T
5、ype,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.txtName & s
6、tu.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,可以使用“Option Base 1”将数组的默认
7、下标下限由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) A) Dim NewArray(10)
8、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,Off,Null 内部常量:VBA提供的一些
10、预定义的内部符号常量;,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 Mod -5 MyValue = 3 2 MyVa
11、lue = 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 逻辑或 NOT 逻辑非,Dim MyValue M
12、yValue = (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,产生最近生成的随机数;,练习题,有如下语句: s=Int(100*Rnd) 执行完毕后,s
14、的值是 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 常用标准函数字符串函数,字符串长度函数 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 Msg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 混凝土墙体砌筑工艺方案
- 2026春季深圳供电局有限公司校园招聘备考题库附答案详解(b卷)
- 解除合同赔偿仲裁申请书
- 2026浙江宁波市医疗中心医院招聘编外人员1人备考题库附参考答案详解【研优卷】
- 2026云南白药集团春季校园招聘备考题库及完整答案详解1套
- 2026河南平顶山发展投资控股集团校园招聘备考题库及完整答案详解【名校卷】
- 2026中国科大基本建设处劳务派遣岗位招聘4人备考题库重点附答案详解
- 2026福州产发园区运营管理有限公司项目运营合同制用工招聘3人备考题库含答案详解【达标题】
- 2026湖南湘科控股集团有限公司本部审计专干岗、企建宣传岗、财务共享中心系统管理岗招聘3人备考题库附答案详解【培优】
- 2026河南省人力资源开发中心有限公司招聘5人备考题库及参考答案详解【典型题】
- 高中数学专题讲座课件
- 《伤口换药技术》课件
- 鱼类性别控制技术研究进展专题培训课件
- 旧桥拆除专项施工方案
- 小学生古诗词大赛备考题库(300题)
- 化学预氧化简介
- GB/T 9978.2-2019建筑构件耐火试验方法第2部分:耐火试验试件受火作用均匀性的测量指南
- GB/T 17711-1999钇钡铜氧(123相)超导薄膜临界温度Tc的直流电阻试验方法
- 建设项目办理用地预审与选址意见书技术方案
- 研究生学术道德与学术规范课件
- (部编版)五年级语文(下册)语文园地一·口语交际一优质课件
评论
0/150
提交评论