《数据库技术7学习.pptx》由会员分享,可在线阅读,更多相关《数据库技术7学习.pptx(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 为什么要使用VBA:1、编写包含特别复杂的表达式时(如用IIF函数 不能实现时)。2、要执行Access标准宏不支持的操作。如事 务处理(即COMMIT,ROLLBACK)。3、动态数据交换,DDE操作。4、同时打开两个以上数据库时。5、应用程序文档化。6、建立用户自定义函数时。7、显示详细的出错信息。8、创建或操作对象。第1页/共43页7.1 程序设计的概念如单击、双击、鼠标按下等事件。第2页/共43页一、基本知识1、VBA基本语法(1)常用语句:如循环、选择语句等(2)语句的基本成分:变量、常量、函数 、运算符及表达式等。(3)程序的控制结构:如模块、过程2、对象的概念 窗体、报表、控件
2、、表、查询等。3、程序的运行方式 事件发生后,对该事件的响应时执行程序。第3页/共43页二、程序设计的一般方法1.选择事件并打开VBE(VISUAL BASIC EDIT)选择事件属性,点击事件生成器2.输入VBA代码第4页/共43页3.运行程序 在窗体视图界面,产生事件,即可运行程序。三、对象及对象的集合Access的对象有表、查询、窗体、报表及各种控件等。所有的同类对象构成对象集合,如所有的窗体构成窗体对象集。对象集合也可作为一个控件对待。对象的属性:描述该对象的各方面的性质。对象的方法:对象所能执行的行为。第5页/共43页方法属性Database对象 Name、QueryTimeOut
3、Updatable CollatingOrder Connect Transactions、Version OpenRecordset CreateProperty CreateQueryDef CreateRelation CreateTableDef Execute、Close 第6页/共43页属性与方法的引用:对象.属性对象.方法Docmd.OpenForm “Orders”OpenForm为方法,Orders为参数其他方法有:SelectObject,DeleteObject,Close,OpenQuery,FindRecord等第7页/共43页7.2 VBE用户界面第8页/共43页第
4、9页/共43页7.3 数据类型一、数据类型第10页/共43页1 1、表示数值型数据的符号 整型:%长整型:&单精度:!双精度:、布尔型数据的值 TRUE -1 FALSE 03 3、日期型时间变量的值#1JAN98#4 4、VariantVariant数据类型 定义变量时未指定类型,则默认为Variant类型。5 5、变量的初始化 定义变量时未指定类型,则默认为Variant类型。第11页/共43页二、变量和常量变量的作用:存储临时值、计算结果等变量可以是整型、字符串型日期型等,也可以是数据库中的任意对象,如表、查询、窗体等。1、变量的声明先定义,后使用在VBE窗口中,选“工具”菜单中的“选项
5、”,选中“要求声明变量”。则在VBE最上方出现下面说明:OPTION EXPLICITDim i as Intger ;Dim name as String;Dim i,j,k as Intger ;i=10;name=“zhang”第12页/共43页2、变量声明语句的位置变量的作用范围与声明语句的位置有关(1)过程级别的变量:在过程中或函数中定义的变量且只能用在此过程中或函数中。如图中的sum、value。(2)模块级别的变量:在所有的过程的上部,如a1。(3)全局变量:用Public声明,如图中的name。第13页/共43页3、常量的声明常量的作用范围与声明语句的位置有关,与变量相同。如:
6、Public Const PI=3.1415926;Const Mystr=“hello”,Mydouble as Double=3.4567第14页/共43页三、数据类型转换第15页/共43页四、数组数组是有相同数据类型的元素按一定顺序组成的序列,在内存中连续存放。数组中的每个元素都是变量,可以通过下标来引用。1、数组的声明Dim a(364)as Integer;数组有a(0),a(1),a(2),a(364)共365个元素,默认下标从0开始。数组下标的指定(1)Option Base 1;指定下标从1开始 Dim a(364)as Integer;a(1),a(2),a(364)(2)D
7、im a(2 to 364)as Integer;指定下标范围第16页/共43页2、数组元素的引用 a(3)=10;3、多维数组Dim a(1 to 5,1 to 10)as Integer;定义 a 为 5行、10列的二维数组第17页/共43页五、用户自定义数据类型称记录类型,有基本数据类型组成,由用户自定义。第18页/共43页Dim Myhome As AddressMyhome.Street=“Green Road”Myhome.Zipcode=“100081”Myhome.Phone=“12345678”;每个成员分别赋值With Myhome .Street=“Green Road”
8、.Zipcode=“100081”.Phone=“12345678”Endwith第19页/共43页7.4 VBA常用语句一、语句分类及书写一条语句是一条完整的命令,可包含关键字、运算符、变量、常量和表达式等。可分为3种类型:1、声明语句:如 Dim a1 as Integer 命名和定义过程、变量、数组以及常数,同时定义了它们的作用范围。其它用来声明的关键字还有ReDim、Static、Public、Private、Const等。第20页/共43页2、赋值语句:如 a1=10Input为输入函数,其功能是弹出一个对话框,将输入的内容作为字符串。3、语句的书写格式(1)一条语句可分为多行,用“
9、_”作为续行符。(2)一行写多条语句时,用“:”分开。第21页/共43页二、选择结构三种基本结构:顺序结构、选择分支结构、循环结构选择结构:按照给定的条件进行分析和判断,执行不同代码。1.If.Then.Else语句第22页/共43页第23页/共43页2.Select Case语句第24页/共43页3.With语句对某个对象执行一系列语句时,可以不必重复指出对象的名称。Mylabel.height=2000 不使用With语句Mylabel.width=2000Mylabel.caption=“This is Mylabel”With EndwithWith Mylabel 使用With语句
10、.height=2000 .width=2000 .caption=“This is Mylabel”Endwith第25页/共43页三、循环结构1.For .Next 语句Dim sum,i as IntegerSum=0For i=1 to 10 step 1 ;step 1 可省略 sum=sum+INext i多次执行某一条或语句序列时,使用循环结构。第26页/共43页2.Do.Loop 语句Do While|Until LoopDo Loop While|Until第27页/共43页Dim sum,i as IntegerSum=0Do sum=sum+i i=i+1Loop whi
11、le i11Dim sum,i as IntegerSum=0Do while i11 sum=sum+i i=i+1Loop 第28页/共43页第29页/共43页Option compare databasePrivate form_load()Dim db as databaseDim recname as recordsetDim strname as fieldDim myname(3)as stringDim inti as integerSet db=currentdb()Set recname=db.openrecordset(“名单”)Set strname=recname!姓
12、名Inti=0Do until recname.eof Myname(inti)=strname Inti=inti+1 Recname.movenextLoopMe.姓名列表.rowsourcetype=“值列表”Me.姓名列表.rowsource=myname(0)For inti=1 to 3 Me.姓名列表.rowsource=Me.姓名列表.rowsource&”;”&myname(i)Next IEnd exit第30页/共43页7.5 过程一、子过程过程是将VBA语句的声明和执行语句集合在一起,并有一个过程名的程序单位。有子过程、函数过程、属性过程三种。第31页/共43页二、函数
13、过程第32页/共43页三、变量的作用域1.变量(或常量)的公共作用域Public与私有作用域Private2.使用Static语句声明变量:能够记住上次使用后的值。3.使用Static关键字声明过程第33页/共43页四、属性过程第34页/共43页7.6 VBA程序设计举例一、控制数据输入输出格式第35页/共43页第36页/共43页二、打开、关闭窗体第37页/共43页三、新建表、删除表第38页/共43页四、消息框的使用第39页/共43页五、运行外部程序第40页/共43页六、编写动画程序1.创建窗体2.编写事件处理过程 第41页/共43页本章作业要求VBA编程练习第42页/共43页感谢您的观看。第43页/共43页