




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章模块 8 1模块的基本概念 模块分为类模块和标准模块1 类模块窗体模块和报表模块具有局部特性 其作用范围局限于所属窗体或报表内部 而生命周期则是伴随着窗体后报表的打开而开始 关闭而结束 2 标准模块标准模块中的公共变量和公共过程具有全局特性 其作用范围在整个应用程序里 生命周期是伴随着程序的运行而开始 关闭而结束 3 将宏转换为模块在Access系统中 可以根据需要 将宏转换为模块 8 2创建模块 过程是模块的单元组成 过程分为两种类型 SUB子过程和Function函数过程 1 在模块中加入过程2 在模块中执行宏 8 3VBA程序设计基础 一般ACCESS程序设计在遇到下列情况时需要使用VBA代码 1 使用UDF User DefinedFunction 用户定义函数 2 复杂的程序处理 3 数据库的事务处理操作 4 使用ActiveX控件和其他应用程序对象 5 错误处理 8 3 1面向对象程序设计的基本概念 Access内嵌的VBA 功能强大 采用目前主流的面向对象机制和可视化编程环境 1 集合和对象2 属性和方法3 事件和事件过程 8 3 1面向对象程序设计的基本概念 集合和对象VBA中的应用程序是由许多对象组成的 如表 窗体 查询等 对象是帮助构造应用程序的元素 以特定的方式组织这些对象 就形成了应用程序 数据库窗口把可供选择的对象排列在一起 形成不同的类 8 3 1面向对象程序设计的基本概念 属性和方法属性属性描述了对象的自身性质 其格式为 对象名 属性 属性值方法方法是系统事先设计好的 可以完成一定操作的特殊过程 是附属于对象的行为和动作 在需要使用的时候可以直接调用 其调用格式为 对象名 方法名 Access中除数据库的7个对象外 还提供一个重要的对象 DoCmd对象除窗体 控件的SetFocus 获得控制焦点 方法外 用得最多得是DoCmd对象的一些方法 使用这些方法 可以在VBA中运行Access的操作 8 3 1面向对象程序设计的基本概念 打开当前数据库中的 雇员 窗体DoCmd OpenForm Employees 在数据库窗口中选择 雇员 窗体DoCmd SelectObjectacForm Employees True在数据库窗口中关闭 雇员 窗体DoCmd CloseacForm Employees acSaveYes删除数据库中的 雇员 表DoCmd DeleteObject Employees DoCmd对象的常用方法 P201 8 3 1面向对象程序设计的基本概念 8 3 1面向对象程序设计的基本概念 事件和事件过程事件事件是指可以发生在一个对象上且能够被该对象所识别的动作 如 单击某个命令按钮就产生该按钮的 单击 事件事件过程当某个对象发生某一事件后 就会驱动系统去执行预先编好的 与这一事件相对应的一段程序 事件过程 8 3 2VBA编辑环境 一 进入VBE编程环境类模块和标准模块进入的方式不同 对于列模块方法 1 2 对于标准模块方法 1 2 3 二 VBE窗体标准工具栏 工程窗口 属性窗口和代码窗口 标准工具条 视图MicrosoftAccess按钮 切换Access2000窗口 插入按钮 插入模块或过程 运行子过程 用户窗体按钮 运行模块中的程序 中断按钮 中断正在运行的程序 重新设置按钮 结束正在运行的程序 设置模式按钮 在设计模式和非设计模式之间切换 工程资源管理器按钮 用于打开工程资源管理器 属性窗口按钮 用于打开属性窗口 对象浏览器按钮 用于打开对象浏览器 VBE编程环境 8 3 2VBA编辑环境 三 VBE环境中编写VBA代码1 对象浏览器2 快速访问子过程3 自动显示信息4 F1帮助信息 8 3 2VBA编辑环境 四 编码基础1 VB代码不区分字母的大小写系统保留字自动转换每个单词的首字母大写用户自定义行以第一次为准2 语句书写自由一行可书写几句语句 之间用冒号分隔 一句语句可分若干行书写 用续行符连接 一行 255个字符3 注释有利于程序的维护和调试Rem开始或单撇 4 保留行号与标号 在VBA中 数据类型用来决定变量可以保存何种数据 VBA支持多种数据类型 为用户编程提供了方便 参照教材P207页表8 2VBA的数据类型列表或下页数据库对象参照教材P208页表8 3 8 3 3数据类型和数据库对象 8 3 3数据类型和数据库对象 VBA的数据类型 一 常量 变量概述 常量 在程序运行中其存储的值不会改变 变量 在程序运行中其值可以改变 VBA使用常量 变量来存储值 用来保存在程序运行期间数据 8 3 4VBA程序设计基础 变量与常量 8 3 4VBA程序设计基础 变量与常量 二 变量和常量的命名规则1 以字母或汉字开头 后可跟汉字 字母 数字或下划线组成 长度小于等于255个字符 2 不要使用VB中的关键字 3 VB中不区分变量名的大小写 4 为了增加程序的可读性 可在变量名前加一个缩写的前缀来表明该变量的数据类型 说明 常量名的命名规则与变量名的命名规则相同 变量对应内存中的临时存储单元 是存储单元的 名字 存放在程序执行过程中产生的中间结果和最终的输出结果 在程序中使用变量 就要给变量定义名称及类型 即对变量进行声明 三 变量 8 3 4VBA程序设计基础 变量与常量 四 变量声明1 用Dim Static语句显式声明变量形式 Dim变量名 AS类型 Dim变量名类型符例 DimiCountAsinteger sAllsumAssingle等价于 DimiCount sAllsum 关键字Dim或Static的区别 Dim声明 随过程的调用而分配存贮单元 每次调用都对变量初始化 过程体结束 变量的内容自动消失 存储单元释放 Static声明 Static声明的变量 也称为静态变量 静态变量在程序运行过程中一直保留其值 即每次调用过程 变量保持原来的值 8 3 4VBA程序设计基础 变量与常量 2 隐式声明语句中的 As类型 子句是可选的 如果使用该子句 就可以定义变量的数据类型 未使用该子句 即未进行上述的声明而直接使用 其类型为Variant类型建议初学者不使用 例 DimiAsinteger s表示声明了一个名为i的整型变量和一个名为s的变体型变量 注意 VBA中允许不事先声明而直接使用变量 可以通过语句OptionExplicit 来要求所使用的变量必须事先声明 否则VBA会发出警告信息 下面是一个简单的程序 其使用的变量a b Sum都没有事先定义 PrivateSubForm Click Sum 0a 10b 20Sum a bPrint Sum SumEndSub 良好的编程习惯应该是 先声明变量 后使用变量 这样做可以提高程序的效率 同时也使程序易于调试 VBA中可以强制显式声明 可以在窗体模块 标准模块和类模块的通用声明段中加入语句 OptionExplicit 8 3 4VBA程序设计基础 变量与常量 声明而未赋值的变量的值为 数值型变量初始化为0 字符型变量为零长度字符串 变体型变量初始化为Empty 变量的初始化 8 3 3VBA程序设计基础 变量与常量 五 常量在程序运行过程中 其值不会被改变的量称为常量 在VBA中有三类常量 直接常量如 10 20 123 0 AB VBA程序设计 等符号常量系统常量指VBA系统预先定义好的 用户可以直接引用的量 如 acForm acQuery vbOk vbRed 符号常量在程序中 某个常量多次被使用 则可以使用一个符号来代替该常量 这样不仅在书写上方便 而且有效地改进了程序的可读性和可维护性 VBA中使用关键字Const声明符号常量 其格式如下 Const常量名 类型符号 常数表达式如 ConstPI 3 1415926 8 3 5VBA程序设计基础 运算符和表达式 一 运算符1 算术运算符 例 5 10mod10 9 3 2 2结果 10 8 3 5VBA程序设计基础 运算符和表达式 2 关系运算符将两个操作数进行大小比较 结果为逻辑量 字符串比较 则按字符的ASCII码值从左到右一一比较 直到出现不同的字符为止 例 ABCDE ABRA 结果为False 男 女 8 3 5VBA程序设计基础 运算符和表达式 3 逻辑运算符将操作数进行逻辑运算 结果是逻辑值条件表达式1And条件表达式2条件表达式均为T结果为T条件表达式1Or条件表达式2条件表达式有一个T结果为T 8 3 5VBA程序设计基础 运算符和表达式 4 字符串运算符字符串连接运算符 123 456 结果 123456 123 456 结果 123456 区别 两边必须是字符串 不一定例如 abcdef 12345 出错 abcdef 12345 结果为 abcdef12345 123 456 结果为579 123 456 结果为 123456 8 3 5VBA程序设计基础 运算符和表达式 5 对象运算符 的引用示例 8 3 5VBA程序设计基础 运算符和表达式 表达式1 组成变量 常量 函数 运算符和圆括号2 书写规则 1 运算符不能相邻 例a b是错误的 2 乘号不能省略 例x乘以y应写成 x y 3 括号必须成对出现 均使用圆括号 4 表达式从左到右在同一基准上书写 无高低 大小 3 不同数据类型的转换运算结果的数据类型向精度高的数据类型靠 Integer 字符运算符 关系运算符 逻辑运算 例 用人单位招聘秘书 年龄小于40岁 女性 学历专科或本科年龄 40性别 女 学历 专科 学历 本科 AndAndOr考虑 若分别写成 年龄 40And性别 女 And 学历 专科 And学历 本科 年龄 40Or性别 女 Or 学历 专科 Or学历 本科 例 表示算术表达式 正确的VB表达式 3 xAndx 7错误的VB表达式 3 x 7或3 xOrx 7 比a小 比b大用Or a小数 b大数 a小数 b大数 比a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025北京市北科发展科技有限公司招聘4人备考考试题库附答案解析
- 2025江苏泰州市泰兴市人民医院社会化规范化培训(第3批)招录4人备考考试题库附答案解析
- 2025山东枣庄山亭区凫城镇公共服务类乡村公益性岗位招聘2人备考练习试题及答案解析
- 2025青海海南同德县教育局招聘临聘教师6人备考考试题库附答案解析
- 2025江西吉安市人才发展集团有限公司招聘劳务外包人员1人备考考试题库附答案解析
- 2025河南省驻马店市树人高级中学招聘教师3人备考考试题库附答案解析
- 2025秋季河北邯郸市中心医院博硕人才引进55人备考考试题库附答案解析
- 2026中国工商银行广东省分行秋季校园招聘1300人备考考试题库附答案解析
- 2025年河北保定博野县中医医院招聘工作人员13人备考考试题库附答案解析
- 工厂安全培训教育课件
- 京东方岗位胜任力测评题库
- 印刷包装公司安全生产管理方案
- 高中数学64数列求和省公开课获奖课件市赛课比赛一等奖课件
- 二手车国庆节活动方案
- 人教版八年级上册地理教学计划及进度表
- 2025高考物理步步高同步练习必修3练透答案
- 分包单位与班组签订合同
- DZ∕T 0215-2020 矿产地质勘查规范 煤(正式版)
- 2024年初中升学考试九年级数学专题复习新课标要求-中考33讲
- (高清版)DZT 0289-2015 区域生态地球化学评价规范
- 冲压车间给员工培训课件
评论
0/150
提交评论