编辑推荐

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》针对Excel*新版本做了全面更新,内容新颖,助你开发大型和小型Excel应用。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》直抒主题,以读者为中心,摒弃华而不实的、冗长的解释,呈现紧贴实用的示例、注意事项和诀窍,提供大量代码和示例模板,助你从普通数据分析人员蜕变为Excel编程专家。

内容简介

  借助VBA成为Excel高级用户

  学习运用VBA语言的强大功能,将自己的Excel技能提升到全新水平!综合性指南中文版Excel2016高级VBA编程宝典(第8版)将帮助你实现数据处理自动化,并开发出功能完备的Excel程序。《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》针对Excel*新版本做了全面更新,内容新颖,助你开发大型和小型Excel应用。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》直抒主题,以读者为中心,摒弃华而不实的、冗长的解释,呈现紧贴实用的示例、注意事项和诀窍,提供大量代码和示例模板,助你从普通数据分析人员蜕变为Excel编程专家。

作者简介

  MichaelAlexander是微软认证的应用开发人员,已撰写多本MicrosoftAccess和Excel书籍。Michael的个人网站是datapigtechnologies.com。

  DickKusleika在最近15年的时间里,一直通过在线论坛、博客、图书和会议等渠道传播知识,帮助用户深入了解和最大限度地运用MicrosoftOffice产品。

目录

第Ⅰ部分ExcelVBA基础知识
第1章电子表格应用开发入门3
1.1关于电子表格应用3
1.2应用开发的步骤4
1.3确定用户的需求4
1.4对满足这些需求的应用
进行规划5
1.5确定最适用的用户界面6
1.5.1自定义功能区7
1.5.2自定义快捷菜单7
1.5.3创建快捷键7
1.5.4创建自定义对话框8
1.5.5在工作表中使用
ActiveX控件8
1.5.6开始开发工作10
1.6关注最终用户10
1.6.1测试应用10
1.6.2应用的安全问题11
1.6.3如何让应用程序看起来更
简明美观13
1.6.4创建用户帮助系统13
1.6.5将开发成果归档14
1.6.6给用户发布应用程序14
1.6.7在必要时对应用进行更新14
1.7其他开发问题14
1.7.1用户安装的Excel版本15
1.7.2语言问题15
1.7.3系统速度15
1.7.4显示模式15
第2章VBA概述17
2.1宏录制器17
2.1.1创建你的第一个宏17
2.1.2比较宏录制的绝对模式和
相对模式20
2.1.3关于宏录制的其他概念24
2.2VisualBasic编辑器概述28
2.2.1了解VBE组件28
2.2.2使用工程资源管理器29
2.2.3使用代码窗口31
2.2.4自定义VBA环境33
2.2.5“编辑器格式”选项卡34
2.2.6“通用”选项卡35
2.2.7“可连接的”选项卡35
2.3VBA的基础知识36
2.3.1了解对象36
2.3.2了解集合37
2.3.3了解属性37
2.4使用Range对象40
2.4.1找到Range对象的属性41
2.4.2Range属性41
2.4.3Cells属性42
2.4.4Offset属性44
2.5需要记住的基本概念45
2.6学习更多信息46
2.6.1阅读《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》剩余的章节47
2.6.2让Excel来帮助编写宏47
2.6.3使用帮助系统47
2.6.4使用对象浏览器47
2.6.5从网上获取48
2.6.6利用用户论坛49
2.6.7访问专家博客49
2.6.8通过YouTube查找视频50

2.6.9通过MicrosoftOfficeDev
Center获取信息50
2.6.10解析其他的Excel文件50
2.6.11咨询周围的Excel人才50
第3章VBA编程基础51
3.1VBA语言元素概览51
3.2注释53
3.3变量、数据类型和常量54
3.3.1定义数据类型55
3.3.2声明变量56
3.3.3变量的作用域58
3.3.4使用常量61
3.3.5使用字符串62
3.3.6使用日期62
3.4赋值语句63
3.5数组65
3.5.1声明数组66
3.5.2声明多维数组66
3.5.3声明动态数组66
3.6对象变量67
3.7用户自定义的数据类型68
3.8内置函数69
3.9处理对象和集合71
3.9.1With-EndWith结构72
3.9.2ForEach-Next结构72
3.10控制代码的执行74
3.10.1GoTo语句74
3.10.2If-Then结构75
3.10.3SelectCase结构78
3.10.4指令块的循环82
第4章VBA的子过程89
4.1关于过程89
4.1.1子过程的声明90
4.1.2过程的作用域90
4.2执行子过程91
4.2.1通过“运行子过程/用户
窗体”命令执行过程92
4.2.2从“宏”对话框执行过程92
4.2.3用Ctrl+快捷键组合
执行过程93
4.2.4从功能区执行过程94
4.2.5从自定义快捷菜单中
执行过程94
4.2.6从另一个过程中执行过程95
4.2.7通过单击对象执行过程98
4.2.8在事件发生时执行过程99
4.2.9从“立即窗口”执行过程100
4.3向过程中传递参数100
4.4错误处理技术103
4.4.1捕获错误104
4.4.2错误处理示例105
4.5使用子过程的实际示例108
4.5.1目标108
4.5.2工程需求108
4.5.3已经了解的信息108
4.5.4解决方法109
4.5.5初步的录制工作109
4.5.6初始设置111
4.5.7代码的编写112
4.5.8排序过程的编写112
4.5.9更多测试116
4.5.10修复问题117
4.5.11实用程序的可用性120
4.5.12对工程进行评估121
第5章创建函数过程123
5.1子过程与函数过程的比较123
5.2为什么创建自定义的函数124
5.3自定义函数示例124
5.3.1在工作表中使用函数125
5.3.2在VBA过程中使用函数125
5.3.3分析自定义函数126
5.4函数过程128
5.4.1函数的作用域129
5.4.2执行函数过程129
5.5函数过程的参数131
5.6函数示例132
5.6.1无参数的函数132
5.6.2带有一个参数的函数134
5.6.3带有两个参数的函数136
5.6.4使用数组作为参数的函数137
5.6.5带有可选参数的函数138
5.6.6返回VBA数组的函数140
5.6.7返回错误值的函数142
5.6.8带有不定数量参数的函数144
5.7模拟Excel的SUM函数145
5.8扩展后的日期函数148
5.9函数的调试149
5.10使用“插入函数”对话框150
5.10.1使用MacroOptions方法151
5.10.2指定函数类别152
5.10.3手动添加函数说明153
5.11使用加载项存储自定义函数154
5.12使用WindowsAPI154
5.12.1WindowsAPI示例155
5.12.2确定Windows目录155
5.12.3检测Shift键157
5.12.4了解有关API函数的
更多信息158
第6章了解Excel事件159
6.1Excel可以监视的事件类型159
6.1.1了解事件发生的顺序160
6.1.2存放事件处理程序的位置160
6.1.3禁用事件161
6.1.4输入事件处理代码162
6.1.5使用参数的事件处理程序163
6.2工作簿级别的事件165
6.2.1Open事件165
6.2.2Activate事件166
6.2.3SheetActivate事件166
6.2.4NewSheet事件167
6.2.5BeforeSave事件167
6.2.6Deactivate事件167
6.2.7BeforePrint事件168
6.2.8BeforeClose事件169
6.3检查工作表事件171
6.3.1Change事件171
6.3.2监视特定单元格区域的
修改172
6.3.3SelectionChange事件177
6.3.4BeforeDoubleClick事件177
6.3.5BeforeRightClick事件178
6.4监视应用程序事件179
6.4.1启用应用程序级别的事件180
6.4.2确定工作簿何时被打开180
6.4.3监视应用程序级别的事件181
6.5访问与对象无关联的事件182
6.5.1OnTime事件182
6.5.2OnKey事件184
第7章VBA编程示例与技巧189
7.1通过示例学习189
7.2处理单元格区域190
7.2.1复制单元格区域190
7.2.2移动单元格区域191
7.2.3复制大小可变的
单元格区域191
7.2.4选中或者识别各种类型的
单元格区域193
7.2.5调整单元格区域大小194
7.2.6提示输入单元格中的值195
7.2.7在下一个空单元格中
输入一个值196
7.2.8暂停宏的运行以便获得
用户选中的单元格区域197
7.2.9计算选中单元格的数目199
7.2.10确定选中的单元格
区域的类型199
7.2.11有效地循环遍历选中的
单元格区域201
7.2.12删除所有空行204
7.2.13任意次数地复制行205
7.2.14确定单元格区域是否包含
在另一个单元格区域内206
7.2.15确定单元格的数据类型207
7.2.16读写单元格区域208
7.2.17在单元格区域中写入值的
更好方法209
7.2.18传递一维数组中的内容211
7.2.19将单元格区域传递给
Variant类型的数组211
7.2.20按数值选择单元格212
7.2.21复制非连续的单元格
区域213
7.3处理工作簿和工作表215
7.3.1保存所有工作簿215
7.3.2保存和关闭所有工作簿216
7.3.3隐藏除选区之外的区域216
7.3.4创建超链接内容表217
7.3.5同步工作表218
7.4VBA技巧219
7.4.1切换布尔类型的属性值219
7.4.2显示日期和时间220
7.4.3显示友好时间222
7.4.4获得字体列表223
7.4.5对数组进行排序224
7.4.6处理一系列文件225
7.5用于代码中的一些有用函数227
7.5.1FileExists函数227
7.5.2FileNameOnly函数227
7.5.3PathExists函数228
7.5.4RangeNameExists函数228
7.5.5SheetExists函数229
7.5.6WorkbookIsOpen函数229
7.5.7检索已经关闭的
工作簿中的值230
7.6一些有用的工作表函数231
7.6.1返回单元格的格式信息232
7.6.2会说话的工作表233
7.6.3显示保存或打印文件的
时间233
7.6.4理解对象的父对象234

7.6.5计算介于两个值之间的
单元格数目235
7.6.6确定行或列中最后一个
非空的单元格236
7.6.7字符串与模式匹配237
7.6.8从字符串中提取
第n个元素238
7.6.9拼写出数字239
7.6.10多功能函数240
7.6.11SHEETOFFSET函数240
7.6.12返回所有工作表中的
最大值241
7.6.13返回没有重复随机整数
元素的数组242
7.6.14随机化单元格区域244
7.6.15对单元格区域进行排序245
7.7WindowsAPI调用246
7.7.1理解API声明246
7.7.2确定文件的关联性247
7.7.3确定默认打印机的信息248
7.7.4确定视频显示器的信息249
7.7.5读写注册表250
第Ⅱ部分高级VBA技术
第8章使用透视表255
8.1数据透视表示例255
8.1.1创建数据透视表256
8.1.2检查录制的数据
透视表代码257
8.1.3整理录制的数据
透视表代码258
8.2创建更复杂的数据透视表260
8.2.1创建数据透视表的代码261
8.2.2更复杂数据透视表的
工作原理262
8.3创建多个数据透视表263
8.4创建转换的数据透视表266

第9章使用图表269
9.1关于图表269
9.1.1图表的位置269
9.1.2宏录制器和图表270
9.1.3Chart对象模型270
9.2创建嵌入式图表271
9.3在图表工作表上创建图表273
9.4修改图表273
9.5使用VBA激活图表274
9.6移动图表275
9.7使用VBA使图表取消激活276
9.8确定图表是否被激活276
9.9从ChartObjects或Charts
集合中删除图表277
9.10循环遍历所有图表277
9.11调整ChartObjects对象的
大小并对齐280
9.12创建大量图表281
9.13导出图表283
9.14修改图表中使用的数据285
9.14.1基于活动单元格修改
图表数据286
9.14.2用VBA确定图表中
使用的单元格区域287
9.15使用VBA在图表上显示
任意数据标签289
9.16在用户窗体中显示图表292
9.17理解图表事件295
9.17.1使用图表事件的一个
示例295
9.17.2为嵌入式图表启用事件298
9.17.3示例:在嵌入式图表上
使用图表事件299
9.18VBA制图技巧301
9.18.1在整个页面上打印
嵌入式图表301
9.18.2创建未链接的图表301
9.18.3用MouseOver事件
显示文本303
9.18.4滚动图表305
9.19使用迷你图307
第10章与其他应用程序的交互311
10.1了解MicrosoftOffice
自动化311
10.1.1了解绑定概念311
10.1.2一个简单的自动化示例313
10.2从Excel中自动执行
Access任务314
10.2.1从Excel中运行
Access查询314
10.2.2从Excel运行Access宏315
10.3从Excel自动执行Word任务316
10.3.1将Excel数据传递给
Word文档316
10.3.2模拟Word文档的邮件
合并功能317
10.4从Excel自动执行
PowerPoint任务319
10.4.1将Excel数据发送到
PowerPoint演示文稿中319
10.4.2将所有Excel图表发送到
PowerPoint演示文稿中321
10.4.3将工作表转换成PowerPoint
演示文稿322
10.5从Excel自动执行Outlook
任务323
10.5.1以附件形式发送活动
工作簿324
10.5.2以附件形式发送指定
单元格区域324
10.5.3以附件形式发送指定的
单个工作表326
10.5.4发送给联系人列表中的
所有Email地址327
10.6从Excel启动其他应用程序328
10.6.1使用VBA的Shell函数328

10.6.2使用Windows的ShellExecute
API函数330
10.6.3使用AppActivate语句331
10.6.4激活“控制面板”对话框332
第11章处理外部数据和文件335
11.1处理外部数据连接335
11.1.1手动创建连接335
11.1.2手动编辑数据连接338
11.1.3使用VBA创建动态连接339
11.1.4遍历工作簿中的所有连接340
11.2使用ADO和VBA来提取
外部数据342
11.2.1连接字符串342
11.2.2声明记录集343
11.2.3引用ADO对象库344
11.2.4以编程方式使用ADO
连接Access344
11.2.5对活动工作簿使用ADO345
11.3处理文本文件348
11.3.1打开文本文件348
11.3.2读取文本文件349
11.3.3编写文本文件349
11.3.4获取文件序号349
11.3.5确定或设置文件位置349
11.3.6读写语句350
11.4文本文件操作示例350
11.4.1导入文本文件的数据350
11.4.2将单元格区域的数据
导出到文本文件351
11.4.3将文本文件的内容导出到
单元格区域352
11.4.4记录Excel日志的用法353
11.4.5筛选文本文件354
11.5执行常见的文件操作354
11.5.1使用与VBA文件
相关的指令355
11.5.2使用FileSystemObject
对象359
11.6压缩和解压缩文件361
11.6.1压缩文件362
11.6.2解压缩文件363
第Ⅲ部分操作用户窗体
第12章使用自定义对话框367
12.1创建用户窗体之前需要
了解的内容367
12.2使用输入框367
12.2.1VBA的InputBox函数368
12.2.2Excel的InputBox方法370
12.3VBA的MsgBox函数373
12.4Excel的GetOpenFilename
方法377
12.5Excel的GetSaveAsFilename
方法380
12.6提示输入目录名称380
12.7显示Excel的内置对话框381
12.8显示数据记录单383
12.8.1使得数据记录单变得
可以访问383
12.8.2通过使用VBA来显示
数据记录单384
第13章用户窗体概述385
13.1Excel如何处理自定义
对话框385
13.2插入新的用户窗体386
13.3向用户窗体中添加控件386
13.4“工具箱”中的控件387
13.4.1复选框387
13.4.2组合框388
13.4.3命令按钮388
13.4.4框架388
13.4.5图像389
13.4.6标签389
13.4.7列表框389
13.4.8多页389
13.4.9选项按钮389
13.4.10RefEdit389
13.4.11滚动条390
13.4.12数值调节钮390
13.4.13TabStrip390
13.4.14文本框390
13.4.15切换按钮390
13.5调整用户窗体的控件391
13.6调整控件的属性393
13.6.1使用“属性”窗口393
13.6.2共同属性394
13.6.3满足键盘用户的需求396
13.7显示用户窗体397
13.7.1调整显示位置398
13.7.2显示非模态的用户窗体398
13.7.3显示基于变量的用户窗体398
13.7.4加载用户窗体399
13.7.5关于事件处理程序399
13.8关闭用户窗体399
13.9创建用户窗体的示例400
13.9.1创建用户窗体401
13.9.2编写代码显示对话框403
13.9.3测试对话框404
13.9.4添加事件处理程序405
13.9.5完成对话框406
13.10理解用户窗体的事件407
13.10.1了解事件407
13.10.2用户窗体的事件408
13.10.3数值调节钮的事件408
13.10.4数值调节钮与文本框
配套使用410
13.11引用用户窗体的控件412
13.12自定义“工具箱”413
13.12.1在“工具箱”中添加新页413
13.12.2自定义或组合控件413
13.12.3添加新的ActiveX控件415
13.13创建用户窗体的模板415
13.14用户窗体问题检测列表416

第14章用户窗体示例417
14.1创建用户窗体式菜单417
14.1.1在用户窗体中使用
命令按钮417
14.1.2在用户窗体中使用
列表框418
14.2从用户窗体选中单元格区域419
14.3创建欢迎界面421
14.4禁用用户窗体的关闭按钮423
14.5改变用户窗体的大小424
14.6在用户窗体中缩放和滚动
工作表425
14.7列表框技巧427
14.7.1向列表框控件中添加
条目428
14.7.2确定列表框中选中的
条目432
14.7.3确定列表框中的多个
选中条目433
14.7.4单个列表框中的多个
列表434
14.7.5列表框条目的转移435
14.7.6在列表框中移动条目436
14.7.7使用多列的列表框控件438
14.7.8使用列表框选中
工作表中的行440
14.7.9使用列表框激活工作表442
14.7.10通过文本框来筛选
列表框444
14.8在用户窗体中使用多页控件446
14.9使用外部控件448
14.10使标签动画化450
第15章高级用户窗体技术453
15.1非模态对话框453
15.2显示进度条457
15.2.1创建独立的进度条458
15.2.2集成到用户窗体中的
进度条461
15.2.3创建非图形化进度条465
15.3创建向导467
15.3.1为向导设置多页控件468
15.3.2在向导用户窗体中添加
按钮468
15.3.3编写向导按钮的程序468
15.3.4编写向导中的相关代码470
15.3.5使用向导执行任务471
15.4模仿MsgBox函数472
15.4.1模仿MsgBox函数:
MyMsgBox函数的代码473
15.4.2MyMsgBox函数的
工作原理474
15.4.3使用MyMsgBox函数476
15.5带有可移动控件的用户窗体476
15.6没有标题栏的用户窗体477
15.7使用用户窗体模拟工具栏479
15.8使用用户窗体来模仿
任务面板481
15.9可调整大小的用户窗体482
15.10用一个事件处理程序处理
多个用户窗体控件485
15.11在用户窗体中选择颜色488
15.12在用户窗体中显示图表490
15.12.1将图表保存为GIF文件491
15.12.2更改图像控件的Picture
属性491
15.13使用户窗体半透明491
15.14用户窗体上的数字推盘493
15.15用户窗体上的电动扑克494
第Ⅳ部分开发Excel应用程序
第16章创建和使用加载项497
16.1什么是加载项497
16.1.1加载项与标准工作簿的
比较497
16.1.2创建加载项的原因498
16.2理解Excel的加载项管理器500
16.3创建加载项501
16.4加载项示例502
16.4.1为加载项示例添加描述
信息503
16.4.2创建加载项503
16.4.3安装加载项504
16.4.4测试加载项505
16.4.5发布加载项505
16.4.6修改加载项505
16.5比较XLAM和XLSM文件506
16.5.1XLAM文件中的VBA
集合成员506
16.5.2XLSM和XLAM文件的
可见性507
16.5.3XLSM和XLAM文件的
工作表和图表工作表507
16.5.4访问加载项中的VBA
过程508
16.6用VBA操作加载项511
16.6.1向AddIns集合中添加项511
16.6.2从AddIns集合中删除项512
16.6.3AddIn对象属性513
16.6.4作为工作簿访问加载项516
16.6.5AddIn对象事件516
16.7优化加载项的性能516
16.8加载项的特殊问题517
16.8.1确保加载项已经安装517
16.8.2从加载项中引用其他
文件519
16.8.3为加载项检测适用的
Excel版本519
第17章使用功能区521
17.1功能区基础521
17.2自定义功能区522
17.2.1向功能区中添加按钮523
17.2.2向快速访问工具栏中
添加按钮525
17.2.3自定义功能区的局限性526
17.3创建自定义的功能区527
17.3.1将按钮添加到现有的
选项卡中527
17.3.2向已有的选项卡中添加
复选框532
17.3.3功能区控件演示535
17.3.4dynamicMenu控件示例542
17.3.5关于自定义功能区的
其他内容544
17.4VBA和功能区546
17.4.1访问功能区控件546
17.4.2使用功能区546
17.4.3激活选项卡548
17.5创建老式工具栏549
17.5.1Excel2007及后续版本中
老式工具栏的局限性549
17.5.2创建工具栏的代码549
第18章使用快捷菜单553
18.1命令栏简介553
18.1.1命令栏的类型553
18.1.2列出快捷菜单554
18.1.3引用命令栏555
18.1.4引用命令栏中的控件555
18.1.5命令栏控件的属性557
18.1.6显示所有的快捷菜单项557
18.2使用VBA自定义快捷菜单559
18.2.1快捷菜单和单文档界面559
18.2.2重置快捷菜单561
18.2.3禁用快捷菜单562
18.2.4禁用快捷菜单项562
18.2.5向“单元格”快捷菜单中
添加一个新项563
18.2.6向快捷菜单添加一个子
菜单565
18.2.7将快捷菜单限制到单个
工作簿567
18.3快捷菜单与事件567
18.3.1自动添加和删除菜单568
18.3.2禁用或隐藏快捷菜单项568
18.3.3创建一个上下文相关的
快捷菜单568
第19章为应用程序提供帮助571
19.1Excel应用程序的“帮助”571
19.2使用Excel组件的帮助系统573
19.2.1为帮助系统使用
单元格批注573
19.2.2为帮助系统使用文本框574
19.2.3使用工作表来显示
帮助文本575
19.2.4在用户窗体中显示
帮助信息576
19.3在Web浏览器中显示
“帮助”580
19.3.1使用HTML文件580
19.3.2使用一个MHTML文件581
19.4使用HTML帮助系统582
19.4.1使用Help方法来显示
HTML帮助信息585
19.4.2将“帮助”文件与应用
程序相关联585
19.4.3将一个帮助主题与一个
VBA函数相关联586
第20章理解类模块589
20.1什么是类模块589
20.1.1内置的类模块590
20.1.2自定义类模块590
20.2创建NumLock类591
20.2.1插入类模块591
20.2.2给类模块添加VBA代码592
20.2.3使用CNumLock类593
20.3属性、方法和事件编程594
20.3.1对象属性编程594
20.3.2对象的方法编程595
20.3.3类模块事件596
20.4QueryTable事件596
20.5创建存储类的类599

20.5.1创建CSalesRep和
CSalesReps类599
20.5.2创建CInvoice和
CInvoices类601
20.5.3用对象填充父类602
20.5.4计算佣金603
第21章兼容性问题605
21.1什么是兼容性605
21.2兼容性问题的类型606
21.3避免使用新功能607
21.4在Mac机器上是否可用608

21.5处理64位Excel609
21.6创建一个国际化应用程序610
21.6.1多语言应用程序611
21.6.2VBA语言的考虑612
21.6.3使用本地属性612
21.6.4系统设置识别613
21.6.5日期和时间设置615
第Ⅴ部分附录
附录AVBA语句和函数引用619


前言/序言

  对大多数人来讲,想要学习ExcelVBA编程技术都起因于需要执行一些利用Excel的标准工具无法完成的任务。对于我们每个人来讲,任务都各不相同。这任务可能是需要为数据集中的所有行自动创建单独的工作簿,也可能是需要自动发送很多报告邮件。不管你面对的是什么样的任务,基本上都可以肯定已经有人使用ExcelVBA来解决跟你一样的问题了。

  就ExcelVBA来讲,最美妙的事莫过于你不是必须成为专家后才能解决问题。你可以为解决一个具体问题而学习相关知识,也可以为处理各种自动化场景而深入学习各种技巧。

  无论你的目标如何,《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》都可以帮助你驾驭VBA语言的强大功能来使任务自动化、工作更省心更有效率。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》涵盖的内容

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》主要介绍VBA(VisualBasicforApplications),这是一种构建于Excel(和其他MicrosoftOffice应用程序)中的编程语言。更具体地说,《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》将展示如何编写使Excel中各种任务自动化的程序。《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》覆盖了从录制简单的宏乃至创建复杂的、面向用户的应用程序和实用程序等所有内容。

  你可以按自己所需来学习《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的内容。可以从头读到尾,也可以从中挑出觉得对自己有用的部分。VBA编程通常都是面向任务的,因此在面对一个具有挑战性的任务时,可以先从《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》中查一查哪些章节是专门针对你所面对的问题的。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》并没有涵盖VSTO(VisualStudioToolsforOffice)中的内容。VSTO是一门较新技术,它使用了VisualBasic.NET和MicrosoftVisualC#。VSTO也可用于控制Excel和其他MicrosoftOffice应用程序。

  你可能知道,Excel2016也可用于其他平台。例如,你可以在浏览器中使用微软的ExcelWebApp,甚至在iPad和平板电脑上运行Excel。这些版本不支持VBA。也就是说,《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》介绍的是针对Windows平台的Excel2016桌面版本。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》读者对象

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》并不是为Excel的初学者编写的。如果读者对使用Excel没有任何经验,那么最好先阅读Wiley出版社出版的JohnWalkenbach撰写的《中文版Excel2016宝典》,该书全面概括了Excel的所有功能,它是为各个层次的读者服务的。

  为发挥《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的最大功效,读者应该是有一定使用经验的Excel用户。《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》假设读者已经掌握了如下技能:

  ●如何创建工作簿、插入工作表、保存文件等

  ●如何在工作簿中导航

  ●如何使用Excel功能区用户界面

  ●如何输入公式

  ●如何使用Excel的工作表函数

  ●如何给单元格和单元格区域命名

  ●如何使用基本的Windows功能,例如文件管理方法和剪贴板的使用

  所需的资源

  为充分学习《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的知识,应该安装Excel的完整版。如果想要学习《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》中的高级技术(如Excel)与其他Office程序之间的通信,你还需要安装Office软件。

  虽然《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》大部分内容都可在Excel前期版本上使用,但还是假定已安装了Excel2016。如果你计划开发用于Excel前期版本的应用程序,还是强烈建议你使用目标客户所使用的前期版本。

  你使用什么版本的Windows并不太重要。只要能运行Windows的计算机系统都没问题,但最好还是使用内存大速度快的机器。因为Excel程序比较大,如果在速度慢内存小的系统上使用会令人崩溃。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》没有介绍适用于Mac计算机上的Excel版本。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》约定

  请花点时间阅读本节内容,这里介绍《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》使用的一些约定。

  Excel命令

  Excel使用上下文相关的功能区系统。顶部的单词(如“插入”、“视图”等)称为“选项卡”。单击某个选项卡,图标的功能区就将显示最适合当前任务的命令。每个图标都有一个名称,通常显示在该图标的旁边或下方。图标是按组排列的,组名显示在图标下方。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》约定:先指明的是选项卡的名称,随后是组的名称,最后是图标的名称。例如,用于处理单元格中自动换行的命令如下所示:

  “开始”|“对齐方式”|“自动换行”

  单击第一个选项卡,即“文件”选项卡,将进入一个名为Backstage的新界面。Backstage窗口的左侧有一列命令。为了指明Backstage命令,先使用单词“文件”,然后是命令名。例如,下面的命令将显示“Excel选项”对话框:

  “文件”|“选项”

  VBE命令

  VBE是在其中使用VBA代码的窗口。VBE使用传统的“菜单和工具栏”界面。下面的命令指单击“工具”菜单并选中“引用”菜单项:

  “工具”|“引用”

  键盘的约定

  需要使用键盘来输入数据。此外,使用键盘还可以直接操作菜单和对话框,如果双手已经放到键盘上,那么这种方法会更方便一些。

  输入

  较长的输入通常以等宽字体显示在单独一行中。例如,书中可能提示输入以下公式:

  =VLOOKUP(StockNumber,PriceList,2)

  VBA代码

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》包含许多VBA代码片段以及完整的过程清单。每个清单以等宽字体显示,每行代码占据单独一行(笔者直接从VBA模块中复制这些清单,并把它们粘贴到了自己的字处理程序中)。为使代码更易于阅读,书中使用一个或多个制表符进行缩进。缩进是可选的,但确实可以帮助限定一起出现的语句。

  当《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》中的单独一行放不下一行代码时,《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》使用标准的VBA续行符:在一行的结尾,采用空格后跟下划线字符的方式表明代码行延伸到了下一行。例如,下面两行是一条代码语句:

  columnCount=Application.WorksheetFunction._

  CountA(Range("A:A"))+1

  可按上面的显示把代码输入到两行中,或者删除下划线字符并把代码输入到一行中。

  函数、文件名和命名单元格区域

  Excel的工作表函数以大写字母显示,如“在单元格C20中输入一个SUM公式”。对于VBA过程名、属性、方法和对象,《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》经常混合使用大写和小写字母以便读者阅读这些名称。

  图标的含义

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》使用一些图标来引起读者的注意,告诉读者这些信息非常重要。

  注意使用“注意”图标来告诉读者这些信息很重要,也许是有助于读者掌握随后任务的概念,或是有助于理解后面资料的一些基础知识。

  提示“提示”图标指出更有效的工作方式或可能不是很明显的方法。

  示例下载这类图标表明示例文件可在下载的示例文件包中找到。具体说明参见前言中的“关于下载的示例文件包”一节。

  警告“警告”图标表明在操作时不小心可能会导致出现问题。

  交叉参考这类图标表明请读者参阅其他章节中关于某个主题的详细信息。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的组织结构

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的章节分为5个主要部分。

  第I部分ExcelVBA基础知识

  第I部分介绍ExcelVBA,为创建和管理Excel子例程和函数提供编程基础知识。第1章全面介绍Excel应用开发方面的各种概念。第2章到第6章讨论在进行VBA编程时需要了解的各种知识。第7章则列举许多有用的示例助你巩固前面所学的VBA知识点。

  第II部分高级VBA技术

  第Ⅱ部分涵盖一些VBA高级编程技术。第8章和第9章讨论如何使用VBA来处理透视表和图表(包括迷你图)。第10章讨论在与其他应用程序(如Word和Outlook)交互时所采用的各种技术。第11章介绍如何处理文件和外部数据源。

  第III部分操作用户窗体

  该部分的4章内容主要介绍自定义对话框(也称为用户窗体)。第12章介绍创建自定义用户窗体的一些内置方法。第13章介绍用户窗体以及可供使用的各种控件。第14章和第15章则列举从基本到高级的自定义对话框的大量示例。

  第IV部分开发Excel应用程序

  该部分讲述创建面向用户的应用程序的重要内容。第16章手把手教你创建加载项。第17章和第18章讨论如何修改Excel的功能区和快捷菜单。第19章介绍向应用程序提供在线帮助的几种不同方法。第20章展示如何开发面向用户的应用程序。第21章探讨在进行ExcelVBA编程时与兼容性相关的一些信息。

  第V部分附录

  第V部分包含了1个附录。附录A是一份参考指南,列出作为VBA中关键字的所有语句和函数。

  关于下载的示例文件包

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》中讨论过的几乎所有知识都配有示例。可以下载《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》中所包含的很多有用示例。

  《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》的配书网站是www.wiley.com/go/excel2016powerprogramming。

  也可登录www.tupwk.com.cn/downpage下载相关内容。或者扫描《中文版Excel 2016高级VBA编程宝典(第8版)(办公大师经典丛书)》封底的二维码直接下载。

  关于PowerUtilityPakOffer

  PowerUtilityPak软件收集了很多有用的Excel实用程序和许多新的工作表函数。

  你可以花点钱购买该产品的完整VBA源代码。研究这些代码是学习一些重要编程技巧的极佳方式。

  该软件作者JohnWalkenbach的网站上还提供了PowerUtilityPak软件的30天试用版,下载地址为:

  http://spreadsheetpage.com

  如果觉得该软件有用,可凭票证购买,购买有优惠。


其他推荐