来吧!带你玩转Excel VBA(含CD光盘1张)(双色)
  • 推荐0
  • 收藏0
  • 浏览1.2K

来吧!带你玩转Excel VBA(含CD光盘1张)(双色)

黄朝阳 (作者) 

  • 书  号:978-7-121-20627-6
  • 出版日期:2013-07-12
  • 页  数:648
  • 开  本:16(185*260)
  • 出版状态:上市销售
  • 维护人:张慧敏
从Excel VBA入门到提高,包含入门级的VBA理论,到制菜单、封装代码、开发套打程序等高级应用。本书除VBA入门的基础理论外,还加了功能区Ribbon和backstage视图、字典、封装代码等等设计内容,backstage视图则是目前为止市场暂时没有任何书籍的论述过,本书可以填补此空白。
本书除VBA入门的基础理论外,还加了功能区Ribbon和backstage视图、字典、封装代码等等设计内容,其中Ribbon、字典和封装方面的教材市场上极少,《VBA程序开发自学宝典(第2版)》书中有描述,而backstage视图则是目前为止市场暂时没有任何书籍的论述过,本书可以填补此空白。
罗刚君是ExcelTip技巧网等近10个办公软件论坛的版主,有着丰富的Office应用经验和图书写作经验。著有《Excel VBA程序开发自学宝典》、《Excel 2010 VBA编程与实践》、《Excel 2010函数与图表速查手册》和《Excel函数、图表与透视表从入门到精通》等10本Excel图书,创建了数十个QQ群作为图书的售后服务群,读者可以随时与作者在线联系。
杨嘉恺是ExcelTip论坛的版主,对VBA读取网页数据和VBA操作数据库有着相当丰富的实战经验,读者可以随时通过论坛或者QQ群与作者交流。
《来吧,带你玩转Excel VBA》是Excel VBA从入门到提高的通用教材。
本书采用Excel 2010的界面编写,除第17章制作功能区菜单外,其他内容皆通用于 Excel 2003、Excel 2007、Excel 2010和Excel 2013。
本书内容
本书主要分为操作自动化引言篇、入门篇、进阶篇和疑难解答篇,覆盖从入门到提高的所有内容,以满足不同层次的读者需求。
其中操作自动化引言篇简述了操作自动化的需求与方式,藉此引出VBA入门篇。
VBA入门篇包含第2章到第13章,主要介绍了与VBA相关的基本概念、常用语句的语法、错误处理技巧、使用数组、开发自定义函数和设计窗体等内容。
进阶篇包含第14章到第22章,主要介绍了类的应用、读取网页数据、制作菜单、开发插件、保护代码、制作安装程序,及开发具有撤销功能的插件等内容。
疑难解答篇即本书第23章,该章提供了365个疑难问答,帮助读者解决日常工作中的一些困惑。
详细安排如下。
第 1 章到第 3 章:解决一些VBA初学者们所关心的问题,包括如何录制宏、如何调用宏、认识代码窗口、如何手工编号代码、保存代码,以及了解什么样的代码适宜放在何处。
第 4 章和第 5 章:介绍VBA相关的基本概念,包括对象、属性、方法和事件,及认识数据类型与常量。
第6章:教学条件语句和循环语句,这两种语句不可以通过录制宏来学习,但却是VBA中最重要的两类语句,所以本章耗费了较大的篇幅来逐一介绍所有条件语句和循环语句的语法,并通过大量的案例展示其应用思路。
第 7 章和第 8 章:主要通过案例强化前6章的知识应用,加深记忆和理解。
第 9 章和第 10 章:介绍对代码纠错的技术和数组应用。通过纠错语句可以让代码更完善,能应付更复杂的工作需求,借用数组则可以对代码加速,提升工作效率。
第11章:介绍处理重复值的5种技术,其中最强大的是字典Dictionary应用。
第12章:展示开发自定义函数的思路,并提供了7个自定义函数的开发步骤,有单个参数的函数、多个参数的函数以及不确定个数的参数的函数。
第13章:讲述窗体与控件,学会本章知识点后,可以设计实用的窗体界面。
第 14 章和第 15 章:分别介绍类模块应用和读取网页数据,这属于VBA的高级应用。
第 16 章到第 18 章:主要介绍如何开发插件,包括为插件设计传统菜单或者功能区选项卡中的菜单。
第 19 章到第 21 章:主要介绍如何对插件进行再加工,包括提升插件的安全性、易用性和专业性,并把插件转换成专业工具,可以双击启动安装向导,且执行代码后可以撤消,使插件更加人性化。
第22章:通过开发“制作工资条工具”的插件展示VBA知识点的综合应用。
第23章:包含365个疑难问答,拓展读者的知识面。书中仅包含问题,答案存放在随书光盘中。
另外,随书光盘还提供了10个附录,包含内置图形对象的类型名称与含义、各种事件、窗体与控件的属性一览等。
读者对象
本书适合两类人群,一类是完全不懂Excel VBA,但需要通过VBA解决工作中的疑难者;另一类是有VBA基础,但需要进修的VBA高级应用者。
本书前13章主要讲述VBA的基本概念和常用语句的语法,同时还提供了关于单元格、工作表、工作簿和图形对象的案例应用,及工作表事件、工作簿事件和应用程序级事件的案例应用。最后还展示了利用防错语句提升代码的通用性、使用数组提升程序的执行效率,及开发自定义函数和窗体的技术。
前13章的内容足以为每一位读者打下坚实的VBA基础。
从第14章开始属于VBA的高级应用,对于有VBA基础者可以直接进修此部分内容。通过第14章到第22章的教学,可以掌握制作专业插件与安装程序的思路。
本书特点
本书内容全面、讲解细致,同时在诸多细节方面也尽显人性化,注重读者的阅读体验。
? 提供案例文件
由于VBA图书的案例较多,部分案例的代码较长,输入代码时极有可能输错或者输漏,从而导致代码不能正常执行。为了避免此问题,本书提供随书光盘一张,光盘中的文件按章节顺序命名,其中存放了书中所用到的所有案例文件,读者可以直接使用文件中的代码和数据,避免手工输入错误。
? 代码思路分析
随书光盘的每个案例文件中都提供了代码思路分析,从而帮助读者快速读懂代码。
代码思路分析在每个模块的顶部,读者可以先查看思路分析再阅读代码。
? 代码注释
书中以及光盘中每句代码皆提供代码的含义注释,力求清晰地传达出代码的功能与写作思路,帮助读者更快地掌握VBA语法。
? 双色印刷
本书将VBA代码与代码的注释采用双色印刷,避免阅读和输入代码时混淆代码与注释,给读者创建一个绝佳的体验。
? 提供查询帮助的关键字
当书中出现新的VBA语句时,为了便于读者快速掌握该语句的功能和语法,除了介绍含义解释外,还提供了在帮助中查询该语句的关键字,避免初学者因掌握不好关键字而查询失败。
例如插入工作表采用Add方法,但是在帮助中查询字键字“Add”很难找到关于插入工作表的帮助信息。对此,书中会标注“查询帮助的关键字:Worksheets.Add方法”,从而使读者可以快速且精确的帮到帮助信息。
? 提示代码放置位置
书中对每一段完整的过程代码都会提示放置位置,避免读者将代码放错位置导致无法实现书中相同的效果。
售后服务
为了给读者创建一个良好的学习环境,提升阅读体验和学习效率,本书提供售后服务论坛和QQ群。读者有任何关于本书的疑问皆可在论坛求助,也可以将自己的心得在论坛发表,还可以将发现的错别字通过论坛反馈给作者,从而使本书重印时改进。
售后服务论坛地址如下:
http://www.exceltip.net/
售后服务QQ群群号在随书光盘中,每一个案例文件中都提供群号。
作者介绍
本书由黄朝阳策划,由罗刚君和杨嘉凯编著。其中第15章由杨嘉恺撰写,其余章节由罗刚君撰写。另外,参与编写工作的还有连平全、汪德成、郑玖虎、郑建、王转秀、熊忠芳、王后松、黄梅、黄庆仔、曾小艳、秦伟和景刚,在此对他们表示感谢。
罗刚君是ExcelTip技巧网等近10个办公软件论坛的版主,有着丰富的Office应用经验和图书写作经验。著有《Excel VBA程序开发自学宝典》、《Excel 2010 VBA编程与实践》、《Excel 2010函数与图表速查手册》和《Excel函数、图表与透视表从入门到精通》等10本Excel图书,创建了数十个QQ群作为图书的售后服务群,读者可以随时与作者在线联系。
杨嘉恺是ExcelTip论坛的版主,对VBA读取网页数据和VBA操作数据库有着相当丰富的实战经验,读者可以随时通过论坛或者QQ群与作者交流。
本书作者
2013-6
2013-6

目录

第一篇 操作自动化引言篇
第1章 操作自动化2
1.1自动化操作的价值.3
1.1.1自动化操作的必要性3
1.1.2实现操作自动化的两个途径4
1.2利用宏简化日常工作5
1.2.1三分钟学会录制宏.5
1.2.2执行宏的方法8
1.2.3两种方法读懂宏代码9
1.2.4宏的优缺点分析12
1.2.5如何发挥宏的长处.13
1.3使用VBA强化Excel功能14
1.3.1追根溯源:什么是VBA14
1.3.2知己知彼:解析VBA的优缺点14
1.3.3窥斑见豹:从一个案例初识VBA.15
1.4 Excel VBA的发展前景.16
1.4.1简化工作16
1.4.2开拓专业17
1.5本书架构17
1.6课后思考18

第二篇 VBA入门篇
第2章 代码应用基础.20
2.1区分VBE代码窗口21
2.1.1认识VBE界面21
2.1.2最常用的代码存放区:标准模块22
2.1.3工作簿事件代码窗口:ThisWorkbook26
2.1.4工作表事件代码窗口:Sheet127
2.1.5窗体代码窗口:UserForm127
2.1.6创建隐藏对象的代码窗口:类模块.28
2.2录入代码28
2.2.1代码的存放位置28
2.2.2写入代码的方式28
2.2.3提升代码的可读性.30
2.2.4调用快速信息.35
2.3四种代码执行方式.35
2.3.1快捷键调用36
2.3.2单击按钮执行.37
2.3.3自动执行37
2.3.4在公式中调用.39
2.4保存代码40
2.4.1文件保存格式对VBA代码的影响40
2.4.2单独保存代码模块.41
2.5让代码畅通无阻41
2.5.1调整宏的安全等级.41
2.5.2添加受信任位置42
2.5.3将代码封装为加载项43
2.6反复调用相同代码.43
2.6.1使用个人宏工作簿.43
2.6.2加载宏.44
2.6.3加载项.44
2.7调用代码的帮助系统44
2.7.1什么是帮助45
2.7.2如何从帮助中查询代码含义45
2.7.3调用网络资源.47
2.8课后思考47
第3章 从概念开始认识VBA49
3.1认识过程50
3.1.1过程的分类50
3.1.2子过程的基本语法.50
3.1.3子过程的命名要求.52
3.1.4子过程的调用方法与访问限制.53
3.1.5过程的执行顺序54
3.1.6过程的递归56
3.2关于参数57
3.2.1参数的存在价值57
3.2.2过程名称中的参数.57
3.2.3参数的赋值方式58
3.2.4可选参数与必选参数60
3.2.5代码中的参数.61
3.3理解对象63
3.3.1什么是对象63
3.3.2对象的引用层次64
3.4对象的属性与方法.64
3.4.1认识属性与方法65
3.4.2自动调用属性与方法66
3.4.3怎样才算完整的VBA语句67
3.5对象的事件.68
3.5.1什么是事件.68
3.5.2事件的存在价值68
3.5.3事件的分类与代码录入方式69
3.5.4事件的参数.71
3.6课后思考72
第4章 详解对象及其层次结构74
4.1查看所有对象75
4.1.1从对象浏览器查看对象.75
4.1.2从帮助中调用对象信息.75
4.2对象的层次与引用方式.76
4.2.1对象的层次.76
4.2.2使用对象名称引用对象.76
4.2.3使用复数形式表示对象集合77
4.2.4使用序号参数引用集合中的子对象.78
4.2.5引用子对象.79
4.2.6引用活动对象80
4.2.7引用父对象.80
4.2.8利用WITH语句引用重复出现的对象.81
4.3 Range对象83
4.3.1 Range("A1")引用方式84
4.3.2 Cells(1,1)引用方式87
4.3.3 [a1]引用方式.87
4.3.4活动单元格:ActiveCell.88
4.3.5下一个单元格:Next89
4.3.6屏幕坐标下的单元格:RangeFromPoint89
4.3.7选区:Selection、RangeSelection90
4.3.8已用区域:UsedRange92
4.3.9当前区域:CurrentRegion94
4.3.10当前数组区域:CurrentArray95
4.3.11按条件引用区域:SpecialCells96
4.3.12模拟Ctrl+方向键产生的单元格:End.99
4.3.13按偏移量重置区域引用:Offset.101
4.3.14按宽度与高度重置区域:Resize103
4.3.15引用多区域的合集:Union104
4.3.16引用多区域的交集:Intersect104
4.3.17用名称引用区域107
4.4图形对象108
4.4.1 Shapes对象与子对象109
4.4.2图形对象的名称109
4.4.3 DrawingObjects 110
4.4.4图形对象的类别子集 110
4.5表对象. 112
4.5.1表的合集与子对象. 112
4.5.2表的分类 112
4.5.3活动表. 113
4.5.4隐藏工作表的特性. 113
4.5.5引用名字为数值的工作表的技巧 114
4.6工作簿对象. 115
4.6.1工作簿合集与子对象 115
4.6.2活动工作簿 115
4.6.3关于后缀名 116
4.6.4关于工作簿格式 117
4.7 Excel应用程序对象. 117
4.7.1 Excel的顶层对象:Application. 117
4.7.2调用子对象时可以省略Application吗 118
4.7.3不同版本的Excel之间的差异. 118
4.8课后思考 119
第5章 揭密数据类型与变量、常量.121
5.1数据类型122
5.1.1区分数据类型的必要性122
5.1.2数据类型的分类123
5.1.3转换数据类型.125
5.2定义变量127
5.2.1变量的用途128
5.2.2定义变量的方法129
5.2.3变量的命名规则130
5.2.4变量的作用域.131
5.2.5变量的生命周期133
5.2.6静态变量与动态变量的分别134
5.2.7声明对象变量.136
5.2.8对象变量的初始化与释放.137
5.3定义常量138
5.3.1常量的用途138
5.3.2常量的定义方式138
5.3.3变量与常量的异同分析140
5.4课后思考140
第6章 条件语句与循环语句.142
6.1 IF语句解析143
6.1.1条件语句的重要性.143
6.1.2 If.Then.Else的单行模式.143
6.1.3 And、Or和Not在条件语句中的作用.144
6.1.4案例解析:指定工作簿的最后开启日期146
6.1.5 If.Then.Else的块形式147
6.1.6块形式的应用案例:创建日期批注.148
6.1.7嵌套使用IF语句.150
6.1.8 IF语句的常见错误与防错之法.156
6.2 Select Case语句解析157
6.2.1 Select Case语句的价值.158
6.2.2 Select Case基本语法158
6.2.3多条件应用案例160
6.2.4 Select Case与IF Then语句比较163
6.3 IIF及Choose函数164
6.3.1 IIF函数语法解析.165
6.3.2 IIF函数案例应用:判断Excel的版本号.165
6.3.3 IIF的优缺点.166
6.3.4 Choose函数语法解析167
6.3.5 Choose函数应用案例:打开搜索引擎.167
6.4 For Next语句解析.169
6.4.1循环语句的价值169
6.4.2 For Next语句基本语法169
6.4.3步长值对循环结果的影响.171
6.4.4 For Next语句应用案例171
6.5 For Each Next语句解析.175
6.5.1遍历对象集合175
6.5.2 For Each…Next语句基本语法175
6.5.3 For Each…Next语句应用案例:定位大于某值的单元格176
6.6 While Wend语句解析178
6.6.1 While Wend语句基本语法.178
6.6.2 While Wend语句应用案例:判断工号是否重复179
6.7 DO Loop语句解析182
6.7.1 Do Loop语法分析.182
6.7.2 Do Loop语法一应用183
6.7.3 Do Loop语法二应用184
6.7.4 Do Loop语法三应用185
6.7.5 Do Loop语法四应用185
6.7.6总结四种循环语句的优缺点188
6.8课后思考189
第7章 4类常见对象的应用案例.191
7.1单元格对象.192
7.1.1选择单元格.192
7.1.2筛选与复制区域的值193
7.1.3多区域复制194
7.1.4选择性粘贴数据196
7.1.5重置已用数据区域.199
7.1.6查找所有成绩为100的单元格201
7.1.7将表示平方米和立方米后面的2和3设为上标202
7.1.8合并相邻且相同的单元格.203
7.1.9按行合并且保留所有数据.205
7.1.10隔行插入行.207
7.1.11标示选区中的重复值208
7.2图形对象210
7.2.1批量导入图片与图片名称.210
7.2.2统一表中所有图片大小及对齐图片212
7.2.3批量导出图片.214
7.2.4插入带图片背景的批注216
7.3工作表对象.219
7.3.1显示所有隐藏的工作表219
7.3.2创建以本月每日日期命名的工作表220
7.3.3保护所有公式.221
7.3.4批量重命名表.223
7.3.5查找所有工作表中有循环引用的单元格224
7.3.6对职工表按学历排序225
7.3.7创建工作表目录227
7.4工作簿对象.228
7.4.1打开带密码且带有自动宏的工作簿228
7.4.2另存工作簿且以今天的日期命名229
7.4.3将外部链接转换成值230
7.4.4关闭工作簿且不保存修改内容.231
7.4.5定时保存且备份工作簿233
7.4.6重命名活动工作簿.234
7.5课后思考236
第8章 深入剖析VBA的各种事件.238
8.1事件的级别与顺序.239
8.1.1事件的级别与代码保存位置239
8.1.2事件的执行方式240
8.1.3事件的执行顺序241
8.2禁用与启用事件241
8.2.1临时关闭事件.242
8.2.2防止事件的连锁反应242
8.3工作表事件详解244
8.3.1工作表事件列表244
8.3.2 Change事件的特例245
8.3.3事件案例:激活工作表时验证访问权限245
8.3.4事件案例:自动标示当前行的背景.247
8.3.5事件案例:双击单元格时定位最大值或最小值248
8.3.6事件案例:在特定区域右击单元格时产生工作表目录.250
8.3.7事件案例:输入表达式时在右列自动返回计算结果251
8.3.8事件案例:单击目录时可打开隐藏的工作表252
8.3.9事件案例:实时保护已录入数据的单元格.253
8.3.10事件案例:在状态栏显示当前科目的不及格人数.254
8.3.11事件案例:通过数据有效性的下拉列表调用对应的图片255
8.4工作簿事件详解256
8.4.1工作簿事件列表257
8.4.2事件案例:记录工作簿打开次数258
8.4.3事件案例:显示活动工作表中的产量达标率259
8.4.4事件案例:保存工作簿时备份文件.260
8.4.5事件案例:打印数据前检查资料是否填写完整261
8.4.6事件案例:关闭工作簿时更新工作表目录.262
8.4.7事件案例:新建工作表时调用模板格式263
8.4.8事件案例:禁止修改总表名称.264
8.4.9事件案例:新建图表时自动设置为阴影、圆角265
8.5应用程序事件详解.266
8.5.1应用程序与类266
8.5.2事件案例:打开任意工作簿时创建工作表目录266
8.5.3事件案例:新建工作簿时自动保存.268
8.6按时执行代码270
8.6.1 OnKey方法的语法分析270
8.6.2创建计划任务271
8.7课后思考271
第9章 处理代码错误.273
9.1代码错误类型分析.274
9.1.1版本问题274
9.1.2参数赋值不当274
9.1.3变量定义不准确276
9.1.4对象不存在.276
9.2错误处理语句277
9.2.1详解Err对象277
9.2.2详解Error函数.279
9.2.3 On Error Resume Next语句.280
9.2.4 On Error GoTo Line语句281
9.2.5 On Error GoTo 0语句283
9.2.6 GoSub.Return语句.284
9.3案例应用287
9.3.1错误处理的常规思路288
9.3.2案例应用:为软件设计收集信息反馈的功能.289
9.3.3案例应用:根据选区的文件名批量导入图片.292
9.3.4案例应用:一键屏弊错误值294
9.4课后思考295
第10章 使用数组提升程序效率297
10.1基本概念298
10.1.1何谓数组298
10.1.2数组的特点.298
10.1.3一维数组298
10.1.4二维数组301
10.1.5数组的参数.302
10.1.6声明数组变量.303
10.1.7动态数组与静态数组的分别306
10.1.8释放动态数组的存储空间. 311
10.2数组函数312
10.2.1用函数创建数组312
10.2.2获取数组元素.313
10.2.3判断变量是否为数组314
10.2.4转置数组314
10.2.5获取数组的上标与下标.316
10.2.6转换文本与数组317
10.2.7筛选数组319
10.3案例分析320
10.3.1将指定区域的单词统一为首字母大写.320
10.3.2罗列不及格人员姓名、科目和成绩322
10.3.3将字符串合并到区域323
10.3.4将职员表按学历拆分成多个工作表325
10.3.5将选区的数据在文本与数值间互换327
10.3.6获取两列数据的相同项.329
10.3.7罗列至少三科不及格的学生姓名331
10.4课后思考333
第11章 处理重复值335
11.1调用内部功能336
11.1.1高级筛选336
11.1.2删除重复项.342
11.1.3数组透视表.345

读者评论