中文版Access 2019宝典(第9版)
学习使用 Microsoft Access 来存储数据、分析信息、生成报表、创建应用程序,以及执行其他更多操作!学习本书,你将全面透彻地理解 Access 的工作方式。
《中文版Access 2019宝典(第9版)》开篇讲解基本数据库概念,此后循序渐进地指导你构建高效的表、创建功能强大的分析查询、利用 Access 窗体创建可靠的应用程序、生成美观的 Access 报表。本书还介绍 SharePoint 集成功能和VBA编程知识,堪称一座熠熠生辉的知识宝库,是各级别Access用户的宝贵资源。
《中文版Access 2019宝典(第9版)/办公大师经典丛书》分为以下7个部分:
第Ⅰ部分:Access 构建块。第1部分对数据库的基本元素提供了详细说明,为之后的学习打下坚实基础,介绍数据库管理的关键词,解释如何规划表和使用 Access 数据类型。在该部分,还首次接触到 Access 以及 Access 界面。
第Ⅱ部分:了解 Access 表。第Ⅱ部分讨论构建 Access 表、管理表之间的关系以及链接到不同的数据源(例如 Excel 文件、文本文件、SQL Server 以及其他 Access 数据库)所需的技能。
第Ⅲ部分:使用 Access 查询。第1II部分介绍 Access 提供的一部分基本分析工具。该部分探讨查询生成器以及基于 Access 表创建简单和高级分析输出的技术,介绍查询的基本知识,其中包括聚合查询、动作查询以及交叉表查询。
第Ⅳ部分:在 Access 中分析数据。第Ⅳ部分介绍许多高级技术,它们可以真正将数据分析带到一个全新水平。该部分研究如何通过查询转换数据、创建自定义计算、执行条件分析、构建强大的子查询以及在查询中应用统计分析。
第Ⅴ部分:使用 Access 窗体和报表。第V部分重点介绍如何使用 Access 构建窗体和报表。该部分介绍将数据转换为美观用户界面和PDF样式 Access 报表的基本知识,讲述如何通过高级窗体控件来改进 Access 应用程序的外观。
第Ⅵ部分:Access 编程基础知识。第VI部分进入下一阶段,讲述编程的基本原理。该部分的章节首先介绍 Access 宏,分析 VBA 基本原理,并利用 VBA 来增强 Access 数据库。该部分帮助掌握驱动 Access 应用程序的复杂对象和事件模型,以及如何充分利用这种丰富的编程环境,构造所需的 VBA 代码。
第Ⅶ部分:高级 Access 编程技术。第VII部分将关注点转移到自动化和集成上,介绍如何利用其他程序和平台来增强报告机制。在该部分的章节中,不仅学习精通VBA所需的基本技能一,还会介绍很多技术内幕和诀窍,它们可以应用于 Access 应用程序开发项目。在该部分,还将介绍 Access 中扩展的 Microsoft SharePoint 集成功能,这些功能允许在 SharePoint 站点上发布Access表、窗体和报表。
第Ⅰ部分 Access构建块 第1章 数据库开发简介 3 1.1 Access的数据库术语 3 1.1.1 数据库 3 1.1.2 表 4 1.1.3 记录和字段 4 1.1.4 值 5 1.2 关系数据库 5 1.3 Access数据库对象 5 1.3.1 表 6 1.3.2 查询 6 1.3.3 数据输入和显示窗体 6 1.3.4 报表 6 1.3.5 宏和VBA 7 1.3.6 数据库对象 7 1.4 5步设计法 7 1.4.1 步骤1:总体设计——从概念到实际 7 1.4.2 步骤2:报表设计 8 1.4.3 步骤3:数据设计 8 1.4.4 步骤4:表设计 9 1.4.5 步骤5:窗体设计 11 第2章 Access简介 12 2.1 Access欢迎屏幕 12 2.2 如何创建空白数据库 13 2.3 Access 2019界面 14 2.3.1 “导航”窗格 15 2.3.2 功能区 17 2.3.3 快速访问工具栏 17 第Ⅱ部分 了解Access表 第3章 创建Access表 21 3.1 表的类型 21 3.1.1 对象表 21 3.1.2 事务表 21 3.1.3 联接表 22 3.2 创建新表 22 3.2.1 设计表 23 3.2.2 使用“设计”选项卡 26 3.2.3 使用字段 27 3.3 创建tblCustomers表 32 3.3.1 使用自动编号字段 32 3.3.2 完成tblCustomers表 32 3.4 更改表设计 33 3.4.1 插入新字段 33 3.4.2 删除字段 33 3.4.3 更改字段位置 33 3.4.4 更改字段名称 33 3.4.5 更改字段大小 33 3.4.6 处理数据转换问题 34 3.4.7 分配字段属性 34 3.5 了解tblCustomers字段属性 43 3.6 设置主键 45 3.6.1 选择主键 45 3.6.2 创建主键 46 3.6.3 创建复合主键 46 3.7 为Access表编制索引 46 3.7.1 索引的重要性 47 3.7.2 多字段索引 48 3.7.3 何时对表编制索引 49 3.8 打印表设计 50 3.9 保存完成的表 51 3.10 操纵表 51 3.10.1 重命名表 51 3.10.2 删除表 51 3.10.3 复制数据库中的表 51 3.10.4 将表复制到另一个数据库 52 3.11 向数据库表中添加记录 52 3.12 了解附件字段 53 第4章 了解表关系 54 4.1 构建无懈可击的数据库 54 4.2 数据规范化和反规范化 56 4.2.1 第一范式 56 4.2.2 第二范式 58 4.2.3 第三范式 61 4.2.4 反规范化 61 4.3 表关系 62 4.3.1 连接数据 63 4.3.2 一对一 64 4.3.3 一对多 65 4.3.4 多对多 65 4.4 完整性规则 66 4.4.1 主键不能包含空值 67 4.4.2 所有外键值必须与对应的主键匹配 68 4.5 键 68 4.5.1 确定主键 69 4.5.2 主键的优点 69 4.5.3 指定主键 70 4.5.4 创建关系并实施参照完整性 71 4.5.5 查看所有关系 74 4.5.6 删除关系 75 4.5.7 遵从应用程序特定的完整性规则 75 第5章 使用Access表 76 5.1 了解数据表 76 5.2 数据表窗口 77 5.2.1 在数据表中移动 78 5.2.2 使用导航按钮 78 5.2.3 检查数据表功能区 79 5.3 打开数据表 80 5.4 输入新数据 80 5.4.1 保存记录 81 5.4.2 了解数据类型的自动验证 82 5.4.3 了解属性如何影响数据输入 82 5.5 在数据表中导航记录 84 5.5.1 在记录之间移动 84 5.5.2 查找特定值 84 5.6 在数据表中更改值 86 5.6.1 手动替换现有值 86 5.6.2 更改现有值 86 5.7 使用撤消功能 87 5.8 复制和粘贴值 87 5.9 替换值 88 5.10 添加新记录 88 5.11 删除记录 89 5.12 显示记录 89 5.12.1 更改字段顺序 89 5.12.2 更改字段显示宽度 90 5.12.3 更改记录显示高度 91 5.12.4 更改显示字体 91 5.12.5 显示单元格网格线和隔行颜色 92 5.12.6 对齐列中的数据 93 5.12.7 隐藏和取消隐藏列 93 5.12.8 冻结列 93 5.12.9 保存更改的布局 94 5.12.10 保存记录 94 5.13 在数据表中排序和筛选记录 94 5.13.1 记录排序 94 5.13.2 筛选选定内容 95 5.13.3 按窗体筛选 96 5.14 聚合数据 97 5.15 打印记录 97 5.16 预览记录 98 第6章 导入和导出数据 99 6.1 Access如何使用外部数据 99 6.1.1 外部数据的类型 99 6.1.2 使用外部数据的方式 99 6.2 用于导入和导出的选项 101 6.3 如何导入外部数据 103 6.3.1 从其他Access数据库导入 103 6.3.2 从Excel电子表格导入 105 6.3.3 导入SharePoint列表 107 6.3.4 从文本文件导入数据 108 6.3.5 导入和导出XML文档 112 6.3.6 导入和导出HTML文档 114 6.3.7 导入除表之外的其他Access对象 115 6.3.8 导入Outlook文件夹 116 6.4 如何导出到外部格式 117 6.4.1 将对象导出到其他Access数据库中 117 6.4.2 通过ODBC驱动程序导出 118 6.4.3 导出到Word中 119 6.4.4 发布到PDF或XPS 120 第7章 链接到外部数据 121 7.1 链接外部数据 122 7.1.1 标识链接表 122 7.1.2 链接数据的限制 123 7.1.3 链接到其他Access数据库表 124 7.1.4 链接到ODBC数据源 126 7.1.5 链接到非数据库数据 126 7.2 使用链接表 130 7.2.1 设置视图属性 130 7.2.2 设置关系 130 7.2.3 优化链接表 131 7.2.4 删除链接表引用 131 7.2.5 查看或更改链接表的信息 131 7.2.6 刷新链接表 132 7.3 拆分数据库 132 7.3.1 拆分数据库的益处 132 7.3.2 了解将哪些对象放置到什么位置 134 7.3.3 使用数据库拆分器插件 134 第Ⅲ部分 使用Access查询 第8章 使用查询选择数据 139 8.1 查询简介 139 8.1.1 查询的功能 139 8.1.2 查询返回的内容 140 8.2 创建查询 140 8.2.1 向查询中添加字段 142 8.2.2 运行查询 143 8.3 使用查询字段 144 8.3.1 在QBE窗格中选择字段 144 8.3.2 更改字段顺序 144 8.3.3 在QBE窗格中调整列大小 145 8.3.4 删除字段 145 8.3.5 插入字段 145 8.3.6 隐藏字段 145 8.3.7 更改字段的排序顺序 146 8.4 向查询中添加条件 147 8.4.1 了解选择条件 147 8.4.2 输入简单字符串条件 147 8.4.3 输入其他简单条件 148 8.5 打印查询的记录集 148 8.6 保存查询 149 8.7 创建多表查询 149 8.7.1 查看表名 150 8.7.2 添加多个字段 150 8.7.3 了解多表查询的限制 151 8.7.4 克服查询限制 151 8.8 使用表窗格 152 8.8.1 查看联接线 152 8.8.2 移动表 152 8.8.3 删除表 152 8.8.4 添加更多表 153 8.9 创建和使用查询联接 153 8.9.1 了解联接 153 8.9.2 利用即席表联接 154 8.9.3 指定联接类型 155 8.9.4 删除联接 156 第9章 在Access中使用运算符和表达式 157 9.1 运算符简介 157 9.1.1 运算符的类型 157 9.1.2 运算符优先顺序 165 9.2 在查询中使用运算符和表达式 166 9.2.1 使用查询比较运算符 166 9.2.2 了解复杂条件 167 9.2.3 在选择查询中使用函数 169 9.2.4 在选择查询中引用字段 169 9.3 输入单值字段条件 169 9.3.1 输入字符(文本或备注型)条件 170 9.3.2 Like运算符和通配符 170 9.3.3 指定非匹配值 172 9.3.4 输入数值条件 173 9.3.5 输入True或False条件 173 9.3.6 输入OLE对象条件 174 9.4 在一个查询中使用多个条件 174 9.4.1 了解Or运算 174 9.4.2 使用Or运算符指定多个值 174 9.4.3 使用QBE窗格的“或”单元格 175 9.4.4 对In运算符使用值列表 175 9.4.5 使用And运算符指定范围 176 9.4.6 使用Between...And运算符 177 9.4.7 搜索Null数据 177 9.5 在多个字段中输入条件 178 9.5.1 在一个查询中跨字段使用And和Or运算符 178 9.5.2 跨一个查询的多个字段指定Or条件 179 9.5.3 在不同字段中使用And和Or运算符 180 9.5.4 不同行上的复杂查询 181 第10章 选择查询以外的查询形式 182 10.1 聚合查询 182 10.1.1 创建聚合查询 182 10.1.2 聚合函数 185 10.2 动作查询 187 10.2.1 生成表查询 188 10.2.2 删除查询 189 10.2.3 追加查询 191 10.2.4 更新查询 195 10.3 交叉表查询 197 10.3.1 使用交叉表查询向导创建交叉表查询 197 10.3.2 手动创建交叉表查询 200 10.4 优化查询性能 204 10.4.1 规范化数据库设计 204 10.4.2 在适当的字段中使用索引 205 10.4.3 通过改进查询设计进行优化 205 10.4.4 定期压缩和修复数据库 206 第Ⅳ部分 在Access中分析数据 第11章 在Access中转换数据 209 11.1 查找并删除重复记录 209 11.1.1 定义重复记录 209 11.1.2 查找重复记录 210 11.1.3 删除重复记录 212 11.2 常见的转换任务 214 11.2.1 填充空白字段 214 11.2.2 连接 214 11.2.3 更改大小写 216 11.2.4 删除字符串中的前导空格和尾随空格 217 11.2.5 查找并替换特定文本 217 11.2.6 在字符串中的关键位置添加自己的文本 218 11.2.7 使用字符标记分解字符串 220 第12章 使用计算和日期 223 12.1 在分析中使用计算 223 12.1.1 常见的计算场景 223 12.1.2 使用表达式生成器构造计算 226 12.1.3 常见的计算错误 229 12.2 在分析中使用日期 231 12.2.1 简单的日期计算 231 12.2.2 使用函数进行高级分析 232 第13章 执行条件分析 239 13.1 使用参数查询 239 13.1.1 参数查询的工作原理 240 13.1.2 参数查询的基本规则 240 13.1.3 使用参数查询 240 13.2 使用条件函数 244 13.2.1 IIf函数 244 13.2.2 Switch函数 248 13.2.3 比较IIf函数与Switch函数 248 第14章 使用SQL的基本知识 251 14.1 了解基本SQL 251 14.1.1 SELECT语句 252 14.1.2 WHERE子句 252 14.1.3 深入了解联接 253 14.2 了解高级SQL语句 254 14.2.1 使用Like运算符扩展搜索 254 14.2.2 在不分组的情况下选择唯一值和行 255 14.2.3 使用GROUP BY子句分组和聚合 255 14.2.4 使用ORDER BY子句设置排序顺序 256 14.2.5 使用AS子句创建别名 256 14.2.6 仅显示SELECT TOP或SELECT TOP PERCENT 256 14.2.7 通过SQL语句执行动作查询 258 14.2.8 使用TRANSFORM语句创建交叉表 259 14.3 使用特定于SQL的查询 259 14.3.1 使用UNION运算符合并数据集 259 14.3.2 使用CREATE TABLE语句创建表 261 14.3.3 使用ALTER TABLE语句操纵列 261 14.3.4 创建传递查询 262 第15章 子查询和域聚合函数 264 15.1 使用子查询增强分析 264 15.1.1 使用子查询的原因 265 15.1.2 子查询基本规则 265 15.1.3 在不输入SQL语句的情况下创建子查询 265 15.1.4 将IN和NOT IN运算符与子查询结合使用 267 15.1.5 将子查询与比较运算符结合使用 268 15.1.6 使用子查询作为表达式 268 15.1.7 使用相关子查询 269 15.1.8 在动作查询中使用子查询 270 15.2 域聚合函数 272 15.2.1 了解不同的域聚合函数 273 15.2.2 了解域聚合函数的语法 274 15.2.3 使用域聚合函数 275 第16章 在Access中运行描述性统计 279 16.1 基本描述性统计 279 16.1.1 使用聚合查询运行描述性统计 279 16.1.2 确定排名、众数和中值 280 16.1.3 从数据集中抽取随机抽样 284 16.2 高级描述性统计 285 16.2.1 计算百分点排名 285 16.2.2 确定记录的四分位数名次 286 16.2.3 创建频率分布 287 第Ⅴ部分 使用Access窗体和报表 第17章 创建基本的Access窗体 293 17.1 使用窗体视图 293 17.1.1 了解不同类型的窗体 294 17.1.2 创建新窗体 294 17.1.3 了解特殊类型的窗体 297 17.1.4 调整窗体区域的大小 301 17.1.5 保存窗体 301 17.2 使用控件 301 17.2.1 对控件进行分类 302 17.2.2 添加控件 303 17.2.3 选择和取消选择控件 306 17.2.4 操纵控件 307 17.3 属性简介 313 17.3.1 显示属性表 313 17.3.2 了解属性表 313 17.3.3 更改控件的属性设置 314 17.3.4 命名控件标签及其标题 315 第18章 在Access窗体上使用数据 317 18.1 使用窗体视图 317 18.1.1 了解功能区的“开始”选项卡 318 18.1.2 在字段中导航 320 18.1.3 在窗体的记录中移动 320 18.2 更改窗体中的值 321 18.2.1 了解无法编辑的控件 321 18.2.2 使用图片和OLE对象 322 18.2.3 在长文本字段中输入数据 322 18.2.4 在日期字段中输入数据 323 18.2.5 使用选项组 323 18.2.6 使用组合框和列表框 324 18.2.7 切换到数据表视图 324 18.2.8 保存记录 325 18.3 打印窗体 325 18.4 使用窗体属性 325 18.4.1 使用“标题”属性更改标题栏文本 326 18.4.2 创建绑定窗体 327 18.4.3 指定如何查看窗体 327 18.4.4 删除记录选择器 328 18.4.5 了解其他窗体属性 328 18.5 添加窗体页眉或页脚 331 18.6 使用节属性 332 18.6.1 “可见”属性 332 18.6.2 “高度”属性 332 18.6.3 “背景色”属性 332 18.6.4 “特殊效果”属性 332 18.6.5 “何时显示”属性 332 18.6.6 打印属性 332 18.7 更改布局 333 18.7.1 更改控件的属性 333 18.7.2 设置Tab键次序 333 18.7.3 修改控件中文本的格式 334 18.7.4 使用字段列表添加控件 334 18.8 将窗体转换为报表 335 第19章 使用窗体控件 336 19.1 设置控件属性 336 19.1.1 自定义默认属性 337 19.1.2 了解常用的控件和属性 337 19.2 创建计算控件 340 19.3 使用子窗体 340 19.4 窗体设计提示 341 19.4.1 使用“制表位”属性 341 19.4.2 标记复选框 342 19.4.3 设置组合框和列表框 342 19.5 了解高级窗体技术 343 19.5.1 使用页码和日期/时间控件 343 19.5.2 使用图像控件 344 19.5.3 控件变种 344 19.5.4 使用格式刷 345 19.5.5 提供更多最终用户帮助 345 19.5.6 添加背景图片 346 19.5.7 限制窗体上显示的记录 347 19.6 使用选项卡控件 347 19.7 使用对话框收集信息 349 19.7.1 设计查询 349 19.7.2 设置命令按钮 349 19.7.3 添加默认按钮 350 19.7.4 设置“取消”按钮 350 19.7.5 删除控制菜单 350 19.8 从头开始设计窗体 350 19.8.1 创建基本的窗体 351 19.8.2 创建子窗体 351 19.8.3 添加子窗体 352 19.8.4 更改窗体的行为 353 19.8.5 更改窗体的外观 354 第20章 使用Access报表显示数据 356 20.1 报表简介 356 20.1.1 标识不同类型的报表 356 20.1.2 区分报表和窗体 358 20.2 从头到尾创建报表 358 20.2.1 定义报表布局 359 20.2.2 收集数据 359 20.2.3 使用报表向导创建报表 359 20.2.4 打印或查看报表 368 20.2.5 保存报表 369 20.3 区段报表设计概念 369 20.3.1 “报表页眉”节 371 20.3.2 “页面页眉”节 371 20.3.3 “组页眉”节 371 20.3.4 “主体”节 371 20.3.5 “组页脚”节 372 20.3.6 “页面页脚”节 372 20.3.7 “报表页脚”节 372 20.4 从头开始创建报表 372 20.4.1 创建新报表并将其绑定到查询 373 20.4.2 定义报表页面大小和布局 374 20.4.3 在报表上放置控件 375 20.4.4 调整节的大小 376 20.4.5 使用文本框 377 20.4.6 更改标签和文本框控件属性 381 20.4.7 放大和缩小文本框控件 382 20.4.8 排序和分组数据 382 20.4.9 对组中的数据进行排序 383 20.4.10 添加分页符 385 20.5 改进报表的外观 385 20.5.1 调整页面页眉 386 20.5.2 在组页眉中创建表达式 386 20.5.3 创建报表页眉 387 第21章 高级Access报表技术 389 21.1 分组和排序数据 389 21.1.1 按字母顺序分组数据 389 21.1.2 根据日期间隔进行分组 392 21.1.3 隐藏重复信息 394 21.1.4 隐藏页面页眉 396 21.1.5 每个组的页码从1开始 396 21.2 设置数据格式 396 21.2.1 创建编号列表 397 21.2.2 添加项目符号字符 399 21.2.3 在运行时添加强调效果 401 21.2.4 避免出现空白报表 402 21.2.5 在列之间插入垂直线 402 21.2.6 每隔n条记录添加一个空白行 404 21.2.7 奇偶页打印 405 21.2.8 在同一文本框中使用不同的格式 406 21.2.9 使标题居中 407 21.2.10 对齐控件标签 407 21.2.11 对控件进行细微调整 407 21.3 添加数据 407 21.3.1 向报表中添加更多信息 407 21.3.2 将用户的姓名添加到绑定报表中 408 21.4 添加更大的灵活性 409 21.4.1 在一个组合框中显示所有报表 409 21.4.2 基于查询的数据快速打印 410 21.4.3 在报表中使用蛇形列 410 21.4.4 使用双步报表处理 414 21.4.5 为控件分配唯一名称 415 第Ⅵ部分 Access编程基础知识 第22章 使用Access宏 419 22.1 宏简介 419 22.1.1 创建宏 420 22.1.2 将宏分配到事件 421 22.2 了解宏安全性 422 22.2.1 启用沙盒模式 422 22.2.2 信任中心 423 22.3 多操作宏 424 22.4 子宏 426 22.5 条件 429 22.5.1 使用条件打开报表 429 22.5.2 条件中的多个操作 430 22.6 临时变量 431 22.6.1 增强已经创建的宏 431 22.6.2 使用临时变量简化宏 432 22.6.3 在VBA中使用临时变量 434 22.7 错误处理和宏调试 434 22.7.1 OnError操作 435 22.7.2 MacroError对象 437 22.7.3 调试宏 437 22.8 嵌入的宏 438 22.9 宏与VBA语句 439 22.9.1 在宏与VBA之间做出选择 440 22.9.2 将现有宏转换为VBA 440 第23章 使用Access数据宏 442 23.1 数据宏简介 442 23.2 了解表事件 443 23.2.1 前期事件 443 23.2.2 后期事件 444 23.3 使用宏设计器处理数据宏 444 23.4 了解操作目录 446 23.4.1 程序流程 446 23.4.2 数据块 446 23.4.3 数据操作 447 23.5 创建第一个数据宏 448 23.6 管理宏对象 450 23.6.1 折叠和展开宏项目 450 23.6.2 移动宏条目 450 23.6.3 将宏保存为XML 451 23.7 了解数据宏的限制 451 第24章 Access VBA入门 453 24.1 VBA简介 453 24.2 了解VBA术语 454 24.3 了解VBA代码基础知识 455 24.4 创建VBA程序 455 24.4.1 模块和过程 455 24.4.2 在代码窗口中工作 460 24.5 了解VBA分支构造 464 24.5.1 分支 464 24.5.2 循环 468 24.6 使用对象和集合 470 24.6.1 对象入门 470 24.6.2 属性和方法 471 24.6.3 With语句 471 24.6.4 For Each语句 472 24.7 探索Visual Basic编辑器 473 24.7.1 立即窗口 473 24.7.2 工程资源管理器 474 24.7.3 对象浏览器 475 24.7.4 VBE选项 475 第25章 了解VBA数据类型和过程 479 25.1 使用变量 479 25.1.1 命名变量 480 25.1.2 声明变量 481 25.2 使用数据类型 484 25.2.1 比较隐式变量与显式变量 485 25.2.2 强制显式声明 486 25.2.3 给变量使用命名约定 487 25.2.4 了解变量作用域和生存期 488 25.2.5 使用常量 490 25.2.6 使用数组 492 25.3 了解Sub和函数 497 25.3.1 了解创建过程的位置 497 25.3.2 调用VBA过程 498 25.3.3 创建Sub 498 25.4 创建函数 500 25.4.1 处理参数 501 25.4.2 调用函数并传递参数 501 25.4.3 创建函数以计算销售税 503 25.5 使用命名参数简化代码 504 第26章 了解Access事件模型 506 26.1 编程事件 506 26.1.1 了解事件如何触发VBA代码 507 26.1.2 创建事件过程 507 26.2 识别常用事件 508 26.2.1 窗体事件过程 509 26.2.2 控件事件过程 511 26.2.3 报表事件过程 512 26.2.4 报表节事件过程 513 26.3 关注事件序列 514 26.3.1 了解常见的事件序列 514 26.3.2 编写简单的窗体和控件事件过程 515 第27章 调试Access应用程序 519 27.1 组织VBA代码 519 27.2 测试应用程序 520 27.2.1 测试函数 521 27.2.2 编译VBA代码 523 27.3 传统调试技术 524 27.3.1 使用MsgBox 524 27.3.2 使用Debug.Print 527 27.4 使用Access调试工具 528 27.4.1 使用立即窗口运行代码 528 27.4.2 使用断点中断执行 529 27.4.3 使用本地窗口查看变量 532 27.4.4 使用“监视”窗口设置监视 533 27.4.5 使用条件监视 534 27.4.6 使用“调用堆栈”窗口 535 27.5 捕获代码中的错误 535 27.5.1 了解错误捕获 536 27.5.2 Err对象 538 27.5.3 在过程中包含错误处理 538 第Ⅶ部分 高级Access编程技术 第28章 使用VBA代码访问数据 541 28.1 使用数据 541 28.2 了解DAO对象 543 28.3.1 DAO DBEngine对象 544 28.3.2 DAO Workspace对象 544 28.3.3 DAO Database对象 544 28.3.4 DAO TableDef对象 545 28.3.5 DAO QueryDef对象 546 28.3.6 DAO Recordset对象 548 28.3.7 DAO Field对象(记录集) 551 28.3 了解ADO对象 552 28.3.1 ADO Connection对象 552 28.3.2 ADO Command对象 554 28.3.3 ADO Recordset对象 555 28.4 编写VBA代码以更新表 556 28.4.1 使用ADO更新记录中的字段 556 28.4.2 更新计算控件 557 28.4.3 添加新记录 561 28.4.4 删除记录 561 28.4.5 删除多个表中的相关记录 562 第29章 使用VBA进行高级数据访问 564 29.1 向窗体中添加未绑定组合框以查找数据 564 29.1.1 使用FindRecord方法 565 29.1.2 使用书签 566 29.2 筛选窗体 569 29.2.1 使用代码 569 29.2.2 使用查询 570 第30章 自定义功能区 575 30.1 功能区层次结构 575 30.1.1 Access功能区的控件 576 30.1.2 特殊功能区功能 578 30.2 编辑默认功能区 578 30.3 使用快速访问工具栏 580 30.4 开发自定义功能区 581 30.4.1 功能区创建过程 581 30.4.2 使用VBA回调 582 30.5 创建自定义功能区 583 30.5.1 步骤1:设计功能区并构建XML 583 30.5.2 步骤2:编写回调例程 584 30.5.3 步骤3:创建USysRibbons表 585 30.5.4 步骤4:向USysRibbons中添加XML 586 30.5.5 步骤5:指定自定义功能区属性 586 30.6 基本的功能区XML 588 30.7 添加功能区控件 589 30.7.1 指定imageMso 589 30.7.2 标签控件 589 30.7.3 按钮控件 590 30.7.4 分隔条 591 30.7.5 复选框控件 592 30.7.6 下拉列表控件 592 30.7.7 拆分按钮控件 594 30.8 将功能区附加到窗体和报表 595 30.9 彻底删除功能区 596 第31章 准备Access应用程序以进行分发 598 31.1 定义当前数据库选项 598 31.1.1 应用程序选项 599 31.1.2 导航选项 602 31.1.3 功能区和工具栏选项 603 31.1.4 名称自动更正选项 603 31.2 开发应用程序 603 31.2.1 构建规范 604 31.2.2 创建文档 605 31.2.3 在分发以前对应用程序进行测试 606 31.3 完善应用程序 607 31.3.1 为应用程序提供一致的外观 607 31.3.2 添加常见的专业组件 607 31.3.3 使应用程序易于启动 614 31.4 保护应用程序 615 31.4.1 在所有Visual Basic过程中使用错误捕获功能 616 31.4.2 将表与应用程序的其他内容分隔开来 618 31.4.3 构建坚固的窗体 618 31.4.4 验证用户输入 619 31.4.5 使用/runtime选项 619 31.4.6 对数据库进行加密或编码 620 31.4.7 保护Visual Basic代码 621 31.5 保护环境 622 31.5.1 在代码中设置启动选项 623 31.5.2 禁用启动跳过 623 31.5.3 设置属性值 624 31.5.4 获取属性值 625 第32章 将Access与SharePoint集成 626 32.1 SharePoint简介 626 32.2 了解SharePoint网站 627 32.2.1 了解SharePoint文档 627 32.2.2 SharePoint列表 627 32.3 在Access和SharePoint之间共享数据 628 32.3.1 链接到SharePoint列表 628 32.3.2 导入SharePoint列表 630 32.3.3 将Access表导出到SharePoint 631 32.3.4 将Access表迁移到SharePoint 632 32.4 使用SharePoint模板 634
Dick Kusleika
Dick Kusleika 获得过12次 Microsoft Excel MVP,与 Microsoft Office 合作超过20年。Dick 为客户开发基于 Access 和 Excel 的解决方案,并在美国和澳大利亚举办了 Office 产品培训研讨会。Dick 还在 www.dailydoseofexcel.com 上撰写与Excel相关的博客。
Michael Alexander
Michael Alexander 是一名微软认证应用程序开发人员(MCAD),著有多本关于使用Microsoft Access 和 Microsoft Excel 高级业务分析的书籍。他在咨询和开发 Office 解决方案方面拥有超过 20 年的经验。Michael 因其对 Excel 社区的持续贡献而被评为 Microsoft MVP。您可以访问 www.datapigtechnologies.com 与他取得联系,他会定期分享 Excel 和 Access 的技巧和技术。