例学VBA--Excel/Access/PowerPoint中的VBA高效应用
书 号:9787113111373
丛 书 名:
作 者:陈永强 李茜 陈海川
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:59元
-
内容简介
1、Office应用程序是目前办公软件中最为常用的工具,用户群大,使用基础广泛;2、通过VBA编程能够极大提高办公文件的工作效率,从而能实现人力和物力的节约;3、通过VBA编程能够满足办公文档使用者的个性化需求,从而把Office应用提高到一个新的应用层次空间——实现其他常用编程工具所能实现的各种功能;4、VBA编程方法和原理浅显易懂,对初学习者的要求非常低,是学习编程绝佳的入门工具;5、VBA应用程序的编写、调试和运行都非常简单,只要安装了Office应用程序的计算机都能进行相关操作,这是其他编程方式很难达到的。 -
前言
? 在编排上尽量做到循序渐进,由浅入深,层层深入,并使各章节的知识点前后连贯,衔接紧密;在编写上尽量做到深入浅出,图文并茂,叙述详尽,表意清楚,步骤完整。读者完全可以根据书中所述操作步骤来实现与本书所展示一致的实例效果。
? 理论和实践并重。本书各实例都是按照先理论后实践的模式进行组织和编写的,具体结构包括如下几个模块:实例目的、理论基础、实例结构、实例流程和操作过程。通过理论部分的学习,读者能够对整个实例有较为全面而清晰的把握,在此基础上进行实际操作和练习将取得事半功倍的效果。
? 实例丰富,选题典型,且具有代表性。本书各实例均经过精挑细选,不仅简单易学,而且都具有一定的代表性和实用性,其设计思路、方法和技巧完全可以直接移植或推广到其他Office VBA应用程序中。
? 每个实例后面都配有与其内容相关的练习题和思考题,以方便读者巩固所学知识和提高自己的编程能力。
4、前言
前 言
什么是VBA
VBA(Visual Basic for Applications)是在Visual Basic的基础上发展起来的,专门用于Office系列办公软件(例如Excel、Word、Access、PowerPoint等)的编程语言,用于提高Office文件的自动化办公水平。VBA作为经典编程语言Visual Basic的一个分支(也可以看做Visual Basic的一个子集),完全继承了Visual Basic优良的编程特点——简单、灵活、功能强大,其语法、函数、编程格式和注释方式等都与Visual Basic一致,对于初学者非常容易上手。
为什么要写本书
目前,Microsoft Office系列软件在办公文件编辑方面已占绝对的主导地位,应用极为广泛,且不管用户层次是高还是低,只要会用计算机,多半都非常熟悉Office软件的应用,特别是其中的Excel和Access。
日常工作中,笔者也是Microsoft Office的忠实用户,并且在长期的使用和实践过程中发现,如果能将专业数据库管理软件的一些编程思想合理地应用到Office文件中,就能够制作出功能强大的个性化办公文件(或者称为Office办公应用程序),从而能够极大地提高基于这些Office文件开展工作的效率。
能够实现上述想法的工具就是VBA。目前,虽然市面上关于VBA编程的书籍比较多,但大多数都是针对VBA的编程方法而写的。本书不仅会结合实例讲解VBA的编程特点和编程方法,更为重要的是,要向读者传达一种基于Office的VBA编程思想:
? 通过VBA编程提高Office文档的自动化程度。
? 通过VBA编程实现个性化的Office应用程序。
? 通过VBA编程展示用户丰富的想象能力。
本书内容
全书可以分为4篇,其中:
? 第1篇——基础篇,包括第0章,主要介绍与Office VBA编程相关的基础知识。
? 第2篇——入门篇,包括实例1~实例20,主要通过20个简单实例介绍Office VBA编程的特点和方法。
? 第3篇——精通篇,包括实例21~实例29,主要通过9个典型的实例深入讲解Office VBA编程的方法、技巧和应用方向。
? 第4篇——提高篇,包括实例30,主要通过4个综合实例展示Office VBA编程的高级应用方法。
另外,本书的附录将介绍常用Office版本与VBA相关的基础操作,以拓宽本书的适用范围。
本书特点
我们编写本书的基本指导思想是:首先,让读者掌握VBA编程所必备的基础知识;然后,通过大量有针对性的典型实例操作和练习,让读者逐步学习和体会VBA编程的思想,理解和掌握VBA编程的方法和技巧;最后,让读者达到能够独立进行VBA应用程序开发的水平。本书的主要特点可以归纳如下:
? 在编排上尽量做到循序渐进,由浅入深,层层深入,并使各章节的知识点前后连贯,衔接紧密;在编写上尽量做到深入浅出,图文并茂,叙述详尽,表意清楚,步骤完整。读者完全可以根据书中所述操作步骤来实现与本书所展示一致的实例效果。
? 理论和实践并重。本书各实例都是按照先理论后实践的模式进行组织和编写的,具体结构包括如下几个模块:实例目的、理论基础、实例结构、实例流程和操作过程。通过理论部分的学习,读者能够对整个实例有较为全面而清晰的把握,在此基础上进行实际操作和练习将取得事半功倍的效果。
? 实例丰富,选题典型,且具有代表性。本书各实例均经过精挑细选,不仅简单易学,而且都具有一定的代表性和实用性,其设计思路、方法和技巧完全可以直接移植或推广到其他Office VBA应用程序中。
? 每个实例后面都配有与其内容相关的练习题和思考题,以方便读者巩固所学知识和提高自己的编程能力。
您需要准备什么
硬件上,只需要一台能够运行Office软件的计算机;软件上,操作系统建议使用Windows XP SP2,Office软件建议使用Office 2003(实际上,Office 2000及以上版本都可以,本书附录专门介绍了Office 2007和2010版与VBA相关的基础操作),以便和书中的叙述保持完全一致。关于参考资料,考虑到本书的重点不是讲解Office软件的基础应用方法,但本书的实际操作中又会涉及相关内容,建议准备一些与Office基础操作相关的书籍(如果不方便,直接查看Office的帮助文件也可以)。
关于作者
本书主要编写人员有西华大学陈永强、李茜和陈海川,其他参编人员有:黄小莉、雷雨、曾传华、宋玉忠、陈子春、刘鹏惠、李明伍和郑海春。陈永强主要负责编写了第0章、实例30和附录;李茜主要负责编写了实例11~实例20;陈海川主要负责编写了实例21~实例25;雷雨主要负责编写了实例1~实例10,黄小莉主要负责编写了实例26~实例29。
由于编者水平有限,加之时间仓促,书中疏漏和不足之处在所难免,恳请各位读者及专家不吝赐教。
如果您对本书某个问题有疑问,或者在学习过程中遇到不能解决的难题,或者对我们有什么意见及建议,请通过E-mail(cyqlq@mail.xhu.edu.cn)与我们联系,我们将有问必答,为您提供超值的延伸服务。 -
目录
第1章 初识Oracle 11g 1
1.1 关系型数据库简介 1
1.1.1 关系型数据库的产生 1
1.1.2 关系型数据库的特点 2
1.2 关系型数据库的范式 4
1.2.1 第一范式(1NF) 4
1.2.2 第二范式(2NF) 5
1.2.3 第三范式(3NF) 5
1.2.4 Boyce-Codd范式(BCNF) 5
1.3 关系型数据库管理系统 6
1.4 Oracle 11g服务器结构 6
1.4.1 数据库 7
1.4.2 表空间、数据文件 7
1.4.3 数据库实例 8
1.5 Oracle 11g新特性 8
1.5.1 数据库管理部分 9
1.5.2 PL/SQL部分 10
1.5.3 其他部分 11
1.6 Oracle 11g数据库实例 11
1.6.1 Oracle的安装 12
1.6.2 登录Oracle 11g 12
1.7 本书使用的数据库简介(仓储管理系统) 15
1.7.1 基础数据相关表 15
1.7.2 物料入库相关表 16
1.7.3 物料出库相关表 18
1.7.4 库存操作相关表 20
1.7.5 报表查询相关表 21
1.8 本章小结 23
第2章 初识PL/SQL 24
2.1 PL/SQL简介 24
2.1.1 SQL发展历史 24
2.1.2 SQL语言的优点 24
2.1.3 PL/SQL与ANSI-SQL的关系 25
2.1.4 PL/SQL的优缺点 26
2.2 学习PL/SQL前的准备 27
2.3 PL/SQL基本句法 28
2.3.1 大小写 28
2.3.2 分隔符 28
2.3.3 引用字符串 29
2.3.4 括号 29
2.4 PL/SQL数据类型 30
2.4.1 标量类型 30
2.4.2 复合类型 34
2.4.3 引用类型 38
2.4.4 LOB类型 38
2.5 PL/SQL基本结构 39
2.6 常量和变量 39
2.6.1 常量 40
2.6.2 变量 40
2.7 表达式和运算符 41
2.7.1 数值表达式 41
2.7.2 字符表达式 41
2.7.3 关系表达式 42
2.7.4 逻辑表达式 42
2.7.5 集合运算符 42
2.7.6 行运算符 43
2.8 流程控制 43
2.8.1 IF...THEN语句 44
2.8.2 IF...THEN...ELSE语句 44
2.8.3 IF...THEN...ELSIF语句 45
2.8.4 CASE语句 45
2.8.5 搜寻式CASE语句 47
2.8.6 LOOP语句 48
2.8.7 WHILE...LOOP语句 50
2.8.8 FOR...LOOP语句 50
2.8.9 GOTO语句 54
2.8.10 NULL语句 56
2.9 PL/SQL常用语句简介 57
2.9.1 DDL数据定义语句 57
2.9.2 DQL数据查询语句 59
2.9.3 DML数据操作语句 60
2.9.4 DCL数据控制语句 61
2.9.5 TCL事务控制语句 62
2.10 PL/SQL功能特性简介 63
2.10.1 游标 63
2.10.2 过程和函数 64
2.10.3 包 66
2.10.4 集合 66
2.10.5 错误处理 67
2.10.6 Oracle 11g中的新特性 72
2.11 本章小结 74
第3章 PL/SQL常用开发工具 75
3.1 SQL*Plus 75
3.1.1 连接Oracle数据库 75
3.1.2 配置SQL*Plus 76
3.1.3 使用SQL*Plus 79
3.1.4 SQL*Plus常用命令 81
3.2 SQL Developer 84
3.2.1 SQL Developer简介 85
3.2.2 连接Oracle数据库 86
3.3 使用SQL Developer 88
3.3.1 运行SQL语句 88
3.3.2 管理表 89
3.3.3 管理序列 90
3.3.4 管理索引 91
3.3.5 管理视图 91
3.3.6 管理触发器 92
3.3.7 管理过程、函数和包 94
3.4 本章小结 95
第4章 数据表的基本操作 96
4.1 数据表基本操作 96
4.2 创建数据表 96
4.3 修改数据表 97
4.3.1 增加列 97
4.3.2 修改列 98
4.3.3 删除数据列 98
4.3.4 更改表名 99
4.4 删除数据表 99
4.5 表的可视化操作 100
4.5.1 创建表 100
4.5.2 编辑表 101
4.5.3 删除表 102
4.6 约束 102
4.6.1 非空约束 103
4.6.2 唯一约束 103
4.6.3 主键约束 105
4.6.4 外键约束 105
4.6.5 条件约束 106
4.6.6 约束的维护 107
4.6.7 指定列默认值 107
4.7 序列的操作 108
4.7.1 创建序列 108
4.7.2 使用序列 109
4.7.3 修改序列 111
4.7.4 删除序列 112
4.8 序列的可视化操作 113
4.8.1 创建序列 114
4.8.2 编辑序列 115
4.8.3 删除序列 115
4.9 索引的种类 116
4.9.1 B-Tree索引(B-Tree Index) 116
4.9.2 基于函数的索引(Function Based Index) 116
4.9.3 反转键索引(Reverse Key Index) 117
4.9.4 位图索引(Bitmap Index) 117
4.9.5 位图连接索引(Bitmap Join Index) 117
4.9.6 压缩索引(Compress Index) 118
4.9.7 降序索引(Descending Index) 118
4.9.8 分区索引(Partitioned Index) 118
4.9.9 索引组织表(Index Organized Table,IOT) 118
4.9.10 簇索引(Cluster Index) 118
4.9.11 域索引(Domain Index) 118
4.9.12 隐藏索引(Invisible Index) 119
4.9.13 虚拟索引(Virtual Index) 119
4.9.14 其他的索引类型 119
4.10 创建索引 119
4.11 使用索引 120
4.12 管理索引 122
4.13 索引的可视化操作 123
4.13.1 创建索引 123
4.13.2 编辑索引 124
4.13.3 删除索引 125
4.14 元数据管理 125
4.14.1 查询数据表信息 125
4.14.2 查询列信息 127
4.14.3 查询约束信息 127
4.14.4 查询序列信息 128
4.14.5 查询索引信息 129
4.15 本章小结 130
第5章 数据的增、删、改 131
5.1 增加数据 131
5.1.1 指定列名的插入 131
5.1.2 省略列名的插入 132
5.1.3 完整性约束问题 133
5.1.4 特殊的插入语句 133
5.2 修改数据 135
5.2.1 简单更新语句 135
5.2.2 使用子查询更新 135
5.2.3 使用MERGE更新 137
5.3 删除数据 139
5.3.1 删除特定行 139
5.3.2 删除所有行 140
5.3.3 删除重复行 140
5.3.4 使用TRUNCATE截断表 143
5.4 本章小结 144
第6章 数据的基本查询 145
6.1 简单查询 146
6.1.1 SELECT语句 146
6.1.2 WHERE子句 147
6.1.3 关键字的使用 148
6.1.4 使用值表达式 149
6.1.5 排序查询结果 150
6.2 常用内置函数 151
6.2.1 数值操作函数 151
6.2.2 字符串操作函数 153
6.2.3 日期时间操作函数 155
6.2.4 转换操作函数 157
6.2.5 辅助函数 160
6.3 分组和聚合查询结果 161
6.3.1 用GROUP BY子句分组 161
6.3.2 使用聚合函数 162
6.3.3 用HAVING子句过滤组 163
6.4 谓词查询 164
6.4.1 范围查询 164
6.4.2 空值判断 165
6.4.3 模糊查询 166
6.4.4 IN谓词 167
6.4.5 EXISTS谓词 167
6.4.6 定量谓词 168
6.5 本章小结 170
第7章 数据的复杂查询 171
7.1 子查询 171
7.1.1 标量子查询 171
7.1.2 比较子查询 173
7.1.3 相关子查询 174
7.1.4 嵌套子查询 175
7.2 用子查询操作数据 176
7.2.1 用子查询增加数据 176
7.2.2 用子查询修改数据 177
7.2.3 用子查询删除数据 178
7.3 集合操作 178
7.3.1 并集运算 179
7.3.2 交集运算 180
7.3.3 差集运算 181
7.4 多表连接 182
7.4.1 基本连接 183
7.4.2 交叉连接 184
7.4.3 自连接 185
7.4.4 自然连接 186
7.5 条件连接(多表连接) 187
7.5.1 内连接 187
7.5.2 外连接 188
7.6 层次化查询 191
7.6.1 层次化数据 191
7.6.2 递归查询 192
7.6.3 数据的层次 194
7.6.4 使用子查询 195
7.6.5 自下而上遍历树 196
7.6.6 节点和分支的裁剪 197
7.7 本章小结 198
第8章 视图 199
8.1 视图简介 199
8.1.1 视图的优点 199
8.1.2 使用视图的注意事项 201
8.2 创建视图 201
8.2.1 单表视图 201
8.2.2 多表视图 203
8.2.3 可更新视图 204
8.2.4 内联视图 206
8.2.5 嵌套视图 209
8.3 使用视图 209
8.3.1 插入数据 209
8.3.2 修改数据 210
8.3.3 删除数据 210
8.3.4 删除视图 211
8.4 视图的可视化操作 211
8.4.1 创建视图 211
8.4.2 编辑视图 212
8.4.3 删除视图 213
8.5 本章小结 214
第9章 触发器 215
9.1 触发器的作用 215
9.2 Oracle触发器种类 216
9.2.1 DML触发器 216
9.2.2 替代触发器 216
9.2.3 事件触发器 217
9.3 DML触发器 217
9.3.1 基本语法 217
9.3.2 行级触发器 219
9.3.3 限定条件的行级触发器 221
9.3.4 级联修改触发器 224
9.3.5 语句级触发器 226
9.3.6 利用触发器进行数据同步 227
9.4 替代触发器 228
9.5 事件触发器 229
9.5.1 基本语法 229
9.5.2 数据库事件触发器 230
9.5.3 DDL事件触发器 232
9.5.4 事件属性函数 232
9.6 管理触发器 234
9.6.1 查看触发器 234
9.6.2 禁用/启用触发器 235
9.6.3 删除触发器 235
9.7 触发器的可视化操作 236
9.7.1 创建触发器 236
9.7.2 编辑触发器 237
9.7.3 删除触发器 238
9.8 本章小结 238
第10章 游标 239
10.1 游标简介 239
10.2 声明游标 239
10.3 打开/关闭游标 240
10.3.1 打开游标 240
10.3.2 传递游标参数 241
10.3.3 从游标中取值 241
10.3.4 批量取得游标中的数据 243
10.3.5 关闭游标 243
10.3.6 一个完整的示例 243
10.4 在游标中使用子查询 244
10.5 游标属性 244
10.5.1 %FOUND属性 245
10.5.2 %ISOPEN属性 245
10.5.3 %NOTFOUND属性 245
10.5.4 %ROWCOUNT属性 246
10.6 用游标进行循环 247
10.6.1 使用子查询代替显式游标 247
10.6.2 在游标FOR循环中为表达式定义别名 248
10.6.3 为游标FOR循环传递参数 248
10.7 游标变量 249
10.7.1 游标变量简介 249
10.7.2 游标变量的定义和声明 249
10.8 控制游标变量 251
10.8.1 打开游标变量 251
10.8.2 从游标变量中取值 253
10.8.3 关闭游标变量 254
10.9 使用游标变量作为主变量 254
10.10 游标变量的限制 256
10.11 游标表达式 256
10.12 本章小结 258
第11章 数据库事务 259
11.1 事务简介 259
11.2 操作事务 259
11.3 设置事务属性 260
11.3.1 访问级别 260
11.3.2 隔离级别 262
11.4 提交事务 263
11.5 回滚事务 264
11.5.1 设置事务保存点 265
11.5.2 回滚事务事例 266
11.5.3 终止事务 267
11.6 与SQL Server事务的区别 267
11.6.1 事务设置及类型的区别 267
11.6.2 事务隔离级别 268
11.6.3 DDL语句对事务的影响 269
11.6.4 用户断开数据库连接对事务的影响 269
11.7 锁 270
11.7.1 使用FOR UPDATE 270
11.7.2 使用LOCK TABLE 271
11.7.3 提交后的数据取得 271
11.8 时间戳 272
11.9 事务日志 275
11.10 本章小结 276
第12章 集合 277
12.1 联合数组 277
12.1.1 创建联合数组 277
12.1.2 填充联合数组 278
12.1.3 调用联合数组 278
12.2 嵌套表 279
12.2.1 创建嵌套表 280
12.2.2 重新指定元素 280
12.2.3 元素序列 281
12.2.4 非空约束 282
12.2.5 在表列中使用嵌套表 283
12.3 变长数组 284
12.3.1 创建变长数组 285
12.3.2 在表列中使用变长数组 286
12.4 操作集合 287
12.4.1 查询集合信息 287
12.4.2 集合类型转换 288
12.5 集合的属性 289
12.5.1 COUNT属性 290
12.5.2 EXISTS属性 290
12.5.3 FIRST和LAST属性 291
12.5.4 LIMIT属性 291
12.5.5 NEXT和PRIOR属性 291
12.6 集合方法 292
12.6.1 DELETE方法 292
12.6.2 EXTEND方法 293
12.6.3 TRIM方法 294
12.7 集合操作符 294
12.7.1 SET操作符 295
12.7.2 MULTISET UNION操作符 296
12.7.3 MULTISET UNION DISTINCT操作符 297
12.7.4 MULTISET INTERSECT操作符 297
12.7.5 MULTISET EXCEPT操作符 298
12.8 多级集合 299
12.9 本章小结 302
第13章 过程、函数和包 303
13.1 过程 303
13.1.1 创建过程的语法 303
13.1.2 与SQL Server存储过程的区别 305
13.2 创建过程 306
13.2.1 创建不带任何参数的过程 306
13.2.2 创建带有IN参数的过程 307
13.2.3 创建带有OUT参数的过程 309
13.2.4 创建带有IN OUT参数的过程 311
13.2.5 参数传递方式 312
13.2.6 与SQL Server存储过程的对比 314
13.3 管理过程 318
13.3.1 查询已创建的过程 318
13.3.2 查看过程源码 319
13.3.3 使用NOCOPY编译提示传递大型数据结构 319
13.3.4 重编译过程 321
13.3.5 删除过程 322
13.4 函数 322
13.4.1 创建函数的语法 323
13.4.2 与SQL Server函数的区别 323
13.5 创建函数 324
13.5.1 创建不带任何参数的函数 324
13.5.2 创建带有IN参数的函数 325
13.5.3 创建带有OUT参数的函数 326
13.5.4 创建带有IN OUT参数的函数 327
13.5.5 参数传递方式 328
13.5.6 函数调用限制 329
13.5.7 与SQL Server函数的对比 329
13.6 管理函数 331
13.6.1 查询已创建的函数 331
13.6.2 查看函数源码 331
13.6.3 重编译函数 332
13.6.4 删除函数 332
13.7 包 332
13.7.1 创建包的语法 332
13.7.2 包的优点 333
13.8 创建包 334
13.8.1 包规范 334
13.8.2 包体 335
13.8.3 调用包组件 337
13.9 管理包 337
13.9.1 查询已创建的包 338
13.9.2 查看包源码 338
13.9.3 重编译包 338
13.9.4 删除包 339
13.10 系统内置包 339
13.11 本章小结 343
第14章 安全管理 344
14.1 安全性与访问控制 344
14.1.1 访问控制与其他安全措施之间的关系 344
14.1.2 访问控制的三要素 345
14.1.3 访问控制矩阵与授权关系表 345
14.1.4 自主访问控制模型 346
14.1.5 强制访问控制模型 347
14.1.6 基于角色的访问控制模型 348
14.2 用户管理 349
14.2.1 身份认证方式 349
14.2.2 创建用户 350
14.2.3 修改用户 352
14.2.4 用户元数据 353
14.2.5 删除用户 354
14.2.6 可视化操作用户 354
14.3 权限管理 356
14.3.1 权限简介 357
14.3.2 授予/撤销系统权限 358
14.3.3 授予/撤销对象权限 360
14.4 角色管理 364
14.4.1 预置系统角色 365
14.4.2 创建角色 366
14.4.3 授权/撤销角色 367
14.4.4 删除角色 369
14.4.5 角色与权限的元数据 370
14.4.6 可视化操作角色 370
14.5 审计 372
14.5.1 审计简介 373
14.5.2 审计分类 373
14.5.3 启用审计 374
14.5.4 执行审计 374
14.5.5 查询审计信息 377
14.6 本章小结 377
第15章 PL/SQL性能优化 378
15.1 查询操作优化 378
15.1.1 使用CASE表达式替代多个查询 378
15.1.2 避免使用“*” 379
15.1.3 查询表顺序的影响 379
15.1.4 使用表的别名(Alias) 379
15.1.5 用WHERE子句替换HAVING子句 380
15.1.6 减少对表的查询 381
15.1.7 WHERE后面的条件顺序影响 381
15.1.8 IN操作符 382
15.1.9 NOT IN操作符 382
15.1.10 <>或!=操作符(不等于) 382
15.1.11 IS NULL 或IS NOT NULL操作(判断字段是否为空) 382
15.1.12 >和< 操作符(大于和小于操作符) 383
15.1.13 LIKE操作符 383
15.1.14 UNION操作符 383
15.1.15 用表连接替换EXISTS 384
15.1.16 使用DECODE函数 384
15.1.17 整合无关联的数据库访问 385
15.2 其他操作优化 386
15.2.1 删除重复记录 386
15.2.2 用TRUNCATE替代DELETE 386
15.2.3 尽量多使用COMMIT 387
15.3 使用绑定变量 387
15.4 利用索引 388
15.4.1 使用索引的基本原则 388
15.4.2 监视索引使用情况 390
15.4.3 不能利用索引的情况 390
15.5 SQL性能分析工具 391
15.5.1 执行计划 392
15.5.2 SQL性能分析器 392
15.5.3 数据库重放和SQL重演 393
15.5.4 SQL调优顾问 393
15.6 本章小结 394 -
作者介绍
主要著译者顺序姓名学历职称学科专长通讯地址1陈永强 硕士副教授 工作单位四川成都西华大学 邮政编码 电话 2李茜 硕士讲师 工作单位四川成都西华大学 邮政编码 电话 3 陈海川硕士 讲师 工作单位四川成都西华大学 邮政编码 电话 审校者(主审者) 学历 工作单位 邮政编码 电话 职称 工作单位 邮政编码 电话 -
编辑推荐
下面是网上摘录的一些有关Office VBA图书的观点,从侧面也可以了解到目前人们对VBA编程的认识程度,反过来也可以说明本书选题的重要性和正确性。【摘录1】[讨论]为什么Excel VBA的书很多,而Word VBA的极少?一个不太确切的数据,VBA图书的市场比例:Excel的占65%,综合的占2%,Access占1%,其它5%(含AutoCAD、Word等)。市面上专门介绍Word VBA的书(中文版)实在太少,一本《Word 2 VBA一册通》(网上很容易找到),挺全面,就是抄帮助文档抄得太厉害了。而另一本《Word VBA高效排版范例应用》(出版日期:25-11),似乎又从前一本书中“借鉴”了不少东西。为什么会这样呢?1、先拿Word和Access对比一下Word比Access使用更广泛吧,居然关于Access VBA的书更多!其实,关于Word普通操作的书,肯定是Word的更多,而普通用户对Access几乎不感兴趣,更别说VBA了。可见VBA(Office二次开发)主要面向更专业的人士,而不是普通用户。2、再比较Word和ExcelWord的基本操作是录入+格式设置;Excel的基本操作是录入+统计。格式设置不用动脑筋,统计则涉及公式函数和图表的应用,更具有“技术含量”。我觉得,从“技术含量”看,Excel的公式函数对应于Word的“查找替换”+“域”,由于Word的很多操作往往可以暴力解决,再加上有许多现成的模板,使得用户没有深入学习的迫切。更重要的是,Word的操作得到的是一个界面效果,可以直观感受,而Excel的操作是数据,要求结果准确,暴力解决既繁琐,又容易出错。3、结论应用层次的不同,导致普通Excel用户更易于接触VBA;而Excel是数据库,地位远远高于Word。所以Excel VBA的书很多,而Word VBA的极少就不难解释了。【摘录2】个人理解,还是没有意识到word VBA到来的好处。excel的初级应用是使用公式,当公式不能满足需求时自然想到了VBA,因为处理的内容主要是数据,因此也比较容易衔接。一般大家走的都是这样的发展道路。在excel编程省去了输入输出界面的编程工作,把主要精力放到数据处理上,表格既是输出也是输入。当数据规模较大时,发现功能的维护比较困难,数据安全存在问题,于是要使用Access了。word是文字处理,主要是控制格式等。在实际中对自动格式处理的需求很多,例如对大文件的层次处理,表格格式的标准化,自动取数据等等,都可以用程序完成。只是体会到这种好处的人不多。还有一本台湾人(侯..名字忘了)写的书很不错。现在许多软件都有输出word文档的功能,例如按照数据库提供的数据内容生成总结文档等,其中肯定用到了word中各种对象编程处理。有书当然好,但要精。如果说通过Excel学会了office中各种对象的含义以及VBA的语法,通过帮助(H) 学word中对象后也能编写VBA程序。从这一点讲,学VBA是值得的,越来越多的软件内嵌了VBA,举一反三,妙趣横生啊。 -
书评书荐
-
附件下载
图书推荐