Access数据库应用技术 教学课件 作者 潘晓南 等 第10章 VBA模块.pptVIP

  • 1
  • 0
  • 约7.24千字
  • 约 40页
  • 2019-10-03 发布于广东
  • 举报

Access数据库应用技术 教学课件 作者 潘晓南 等 第10章 VBA模块.ppt

第10章 VBA模块 第10章 VBA模块    主要内容 模块及相关的概念 VBA以及程序的组成 VBA代码的调试方法 VBA程序错误处理方法 ?    Access 具有强大的界面功能,这使得用户能够方便地建立各种对象。尤其是利用宏已经可以执行简单的任务,如对象的修改和数据的查找。但在某些情况下,用户需要利用模块提供的强大功能,完成更难的任务。 ?? 模块的概念   ??? 模块是和数据表、查询、报表、宏等一样, 是Access中的一种对象。    模块是由一种叫做VBA(Visual Basic for Application)的语言来实现的。VBA是微软公司将Visual Basic的一部分代码结合到OFFICE中而形成的。模块是存储在一个单元中的VBA声明和过程的集合。 模块的主要功能 维护数据库:可以将事件过程创建在窗体或报表的定义中,更有利于数据库的维护。 创建自定义函数:使用这些自定义的函数就可以避免写复杂的表达式。 显示详细的错误提示:可以检测错误并进行显示。这样就有更好的用户界面,对用户的下一步操作进行帮助。 执行系统级的操作:可以对系统中文件进行处理,使用动态数据交换(DDE),应用Windows系统函数和数据通讯。 模块的分类 ??? 模块有两种:类模块和标准模块。 (1) 类模块是包含类的定义的模块,包含其属性和方法的定义。类模块有三种基本形式:窗体类模块、报表类模块和自定义类模块,它们各自与某一窗体或报表相关联。为窗体(或报表)创建第一个事件过程时,Access将自动创建与之关联的窗体或报表模块。单击窗体(或报表)“设计”视图中工具栏上的“代码”命令 。可以查看窗体(或报表)的模块。 模块的分类 (2) 标准模块包含在数据库窗口的模块对象列表中,标准模块包括有通用过程和常用过程,这些过程不与Access数据库文件中的任何对象相关联,也就是说,如果控件没有恰当的前缀,这些过程没有指向Me(当前对象)或控件名的引用。但可以在数据库中任何其他对象中引用标准模块中的过程。 模块的组成 ??? 通常,模块是由以下两部分组成: ??? 第一部分是声明部分:可以在这部分定义变量、常量、自定义类型和外部过程。在模块中,声明部分与过程部分是分割开来的,声明部分中设定的常量和变量是全局性的,可以被模块中的所有过程调用。 ??? 第二部分是事件过程部分:这是一种自动执行的过程,用来对用户或程序代码启动的事件或系统触发的事件做出响应。包括函数和过程。 过程    过程是用VBA语言的声明和语句组成的单元,作为一个命名单位的程序段,它可以包含一系列执行操作或计算值的语句和方法。一般使用的过程有两种类型:Sub(子程序)过程和Function(函数)过程 1. Sub过程    Sub过程是执行一系列操作的过程,在执行完成后不返回任何值,是能执行特定功能的语句块。Sub过程可以被置于标准模块和类模块中。 声明Sub过程的语法形式如下: [Public | Private] [Static] Sub 子程序名([参数 [As 数据类型]]) [一组语句] [Exit Sub] [一组语句] End Sub 2. Function过程     Function过程又称为函数,也是能执行特定功能的语句块。函数也是一种过程。在VBA中,提供了大量的内置函数,编程时可以直接引用。但有时需要按自己的要求定义函数,不过它是一种特殊的、能够返回值的Function过程。有没有返回值,是Sub过程和Function过程之间最大的区别。 声明函数的语法形式如下: [Public | Private] [Static] Function 函数名([参数[As 数据类型]]) [As 数据类型] [一组语句] [函数名=表达式] [Exit Function] [一组语句] [函数名=表达式] End Function VB开发环境    VBA开发环境可以用于创建和编辑VBA程序,也可以用于编辑已录制的宏和编写新宏。 VBA编程基础 1.数据类型    VBA一般用变量保存计算的结果、设置属性、指定方法的参数以及在过程间传递数值。为了高效率地执行,VBA为变量定义了一个数据类型的集合。在Access里,很多地方都要指定数据类型,包括过程中的变量、定义表和函数的参数等。 数据类型 ??? VBA的数据类型可以分为数值数据类型、布尔数据类型、日期数据类型、字符数据类型,对象数据类型、变体数据类型和用户自定义数据类型。 各种数据类型所占用的存储空间、所表示的数据范围大小、以及支持的数据运算不同。 数据类型 (一)数值数据类型 ??

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档