新書推薦:
《
中文版SOLIDWORKS 2024机械设计从入门到精通(实战案例版)
》
售價:NT$
450.0
《
纯数学教程
》
售價:NT$
390.0
《
威尔士史:历史与身份的演进
》
售價:NT$
490.0
《
黄金、石油和牛油果:16件商品中的拉丁美洲发展历程
》
售價:NT$
395.0
《
母亲的选择:看不见的移民保姆与女性工作
》
售價:NT$
340.0
《
城邦政治与灵魂政治——柏拉图《理想国》中的政治哲学研究
》
售價:NT$
590.0
《
3分钟漫画墨菲定律:十万个为什么科普百科思维方式心理学 胜天半子人定胜天做事与成事的权衡博弈之道
》
售價:NT$
249.0
《
1911:危亡警告与救亡呼吁
》
售價:NT$
349.0
|
編輯推薦: |
资深软件开发专家多年经验结晶,深入浅出阐释Office VBA开发涉及的工具、方法和实践
|
內容簡介: |
本书由一线高校教师根据自己十余年VBA开发经验编写而成,书中深入浅出地介绍Of?ce VBA的开发方法与实践。本书内容体系完善,涉及Of?ce多个组件的交互编程,重点阐释工具栏设计和功能区设计,案例丰富,让读者身临其境,体会VBA编程的策略和魅力。 本书可以帮助读者轻松熟悉Of?ce VBA编程,系统学习VBA编程的每个层面。全书分为19章,内容包括VBA编程概述、宏的编写和执行、VBA编程环境、VBA语法基础、过程与函数设计、程序调试和错误处理、字符串处理、数学计算与日期处理、Excel VBA对象模型和相关对象、用户窗体和控件设计、自定义工具栏、Excel加载宏和经典编程实例等。书中所有章节涉及的程序代码都给出了详细分析。 本书可作为职场办公人员、高校理工科师生、Of?ce专业开发人员的自学用书,也可以作为Of?ce编程培训讲师的教学参考书。
|
目錄:
|
第1章?VBA编程概述 1
1.1?VBA应用领域和发展现状 1
1.1.1?美国的VBA水平 1
1.1.2?日本的VBA水平 2
1.1.3?VBA专家考试 3
1.2?Office与VBA的安装 3
1.2.1?安装DAEMON Tools Lite 5
1.2.2?Office 2003的安装 6
1.2.3?Office 2010的安装 10
1.3?Office版本 12
1.3.1?界面的变化 13
1.3.2?文件格式的革新 14
1.3.3?Office版本对VBA编程的
???影响 15
1.4?Office VBA编程开发的产品类型 15
1.4.1?基于Office文件的编程开发 15
1.4.2?Visual Basic 6封装 16
1.4.3?VSTO开发 16
1.5?高效学习VBA编程 16
1.5.1?必备基础 16
1.5.2?学习计划 17
习题 17
第2章?宏的编写和执行 18
2.1?编程前的设定 18
2.1.1?显示开发工具选项卡 18
2.1.2?设置宏安全性 19
2.2?开始VBA宏编程 20
2.2.1?手工编写第一个VBA宏 20
2.2.2?录制宏 21
2.3?VBA代码的保存 23
2.4?宏的执行方法 24
2.4.1?使用宏对话框 25
2.4.2?使用快捷键 25
2.4.3?指定宏到图形对象 26
2.4.4?使用工作表事件运行宏 26
2.4.5?使用工作簿事件运行宏 28
2.4.6?指定宏到功能区 28
2.4.7?指定宏到快速访问工具栏 30
2.4.8?通过立即窗口执行宏 31
习题 31
第3章?VBA编程环境 32
3.1?VBA编辑器界面介绍 32
3.1.1?立即窗口 33
3.1.2?本地窗口 35
3.1.3?属性窗口 35
3.1.4?对象浏览器 36
3.1.5?代码的查找和替换 37
3.1.6?VBA选项 38
3.1.7?外接程序管理器 39
3.1.8?VBA帮助 40
3.2?VBA工程管理 42
3.2.1?添加模块 42
3.2.2?移除模块 42
3.2.3?导出和导入模块 43
3.2.4?修改工程属性 43
3.2.5?工程引用 44
习题 45
第4章?VBA语法基础 46
4.1?VBA数据类型 46
4.1.1?字符串 47
4.1.2?数值型 48
4.1.3?日期和时间型 49
4.1.4?布尔型 49
4.1.5?变体型 50
4.1.6?对象型 50
4.1.7?数据类型的判断 51
4.1.8?变量声明的简写形式 54
4.1.9?变量声明的初始默认值 54
4.1.10?数据类型的转换 55
4.2?表达式与运算符 56
4.2.1?算术运算符 56
4.2.2?比较运算符 57
4.2.3?Like运算符 58
4.2.4?逻辑运算符 59
4.3?使用变量 60
4.3.1?变量命名 60
4.3.2?变量的声明 60
4.3.3?变量的赋值 61
4.3.4?变量的作用范围和生存期 63
4.3.5?声明变量的其他写法 64
4.4?使用常量 64
4.4.1?自定义常量 64
4.4.2?内置枚举常量 65
4.5?其他数据类型 68
4.5.1?自定义类型 68
4.5.2?枚举类型 69
4.5.3?集合 70
4.6?使用InputBox输入对话框 72
4.6.1?VBA库中的InputBox 72
4.6.2?Excel库中的InputBox 73
4.7?使用MsgBox输出对话框 75
4.8?顺序结构 77
4.9?条件选择结构 77
4.9.1?If语句 78
4.9.2?Select语句 79
4.9.3?Choose语句 82
4.9.4?Switch语句 82
4.10?循环结构 83
4.10.1?WhileWend语句 83
4.10.2?DoLoop语句 84
4.10.3?For语句 86
4.10.4?For Each语句 87
4.11?流程跳转控制语句 88
4.11.1?GoTo语句 88
4.11.2?GoSubReturn语句 89
4.11.3?Exit语句 90
4.11.4?End语句 90
4.12?数组 91
4.12.1?一维数组 91
4.12.2?二维数组 93
4.12.3?使用Array创建数组 94
4.12.4?对象数组 95
4.12.5?变体数组 96
4.12.6?动态数组 96
4.13?代码优化 97
4.13.1?同一行书写多条语句 98
4.13.2?长语句的续行书写 98
4.13.3?使用缩进 98
4.13.4?使用模块定义 102
4.13.5?使用注释 103
4.13.6?使用With结构 104
4.13.7?使用Me关键字 106
习题 107
第5章?过程与函数设计 108
5.1?过程 108
5.1.1?创建过程 108
5.1.2?过程的运行和调用 109
5.1.3?过程的参数 110
5.1.4?可选和默认参数 112
5.1.5?参数的传递方式 113
5.1.6?参数数量可变的过程 114
5.1.7?数组作为参数 114
5.2?函数 115
5.2.1?自定义函数的返回值 116
5.2.2?自定义函数的用途 116
5.2.3?设置自定义函数的说明信息 119
5.2.4?为自定义函数创建帮助文档 121
习题 127
第6章?程序调试和错误处理 128
6.1?程序调试技巧 128
6.1.1?单步执行程序 128
6.1.2?设置断点 130
6.1.3?使用Stop语句 130
6.2?错误处理 131
6.2.1?Err对象 132
6.2.2?遍历错误号和错误描述 133
6.2.3?故意引发错误 133
6.3?错误跳转 134
6.3.1?错误发生时跳转到某行 134
6.3.2?错误发生时继续向下执行 136
6.3.3?Resume与Resume Next语句 136
习题 137
第7章?字符串处理 139
7.1?认识字符串 140
7.1.1?全角与半角 140
7.1.2?子字符串 140
7.1.3?字符串的长度 141
7.1.4?检索子字符串的位置 142
7.2?字符串转换 144
7.2.1?字符与ASCII码 144
7.2.2?大小写转换 145
7.2.3?全半角转换 146
7.2.4?去除多余空格 146
7.2.5?倒序 147
7.2.6?替换 147
7.3?字符串生成 149
7.3.1?String函数 149
7.3.2?Space函数 149
7.4?字符串与数组 149
7.4.1?Split函数 149
7.4.2?Join函数 151
7.4.3?Filter函数 151
习题 152
第8章?数学计算与日期处理 154
8.1?数学函数 154
8.1.1?三角函数计算 154
8.1.2?随机数 155
8.2?日期与时间函数 156
8.2.1?返回与设置当前日期时间 157
8.2.2?计算程序运行时间 157
8.2.3?日期时间的生成 158
8.2.4?日期时间的加减运算 159
8.2.5?计算两个日期的间隔 160
8.2.6?日期时间的分解 161
习题 161
第9章?Excel VBA对象模型 162
9.1?对象和对象类型 162
9.1.1?属性 162
9.1.2?方法 163
9.1.3?事件 163
9.1.4?父子对象 164
9.2?使用对象变量 164
9.2.1?With结构 166
9.2.2?集合对象 167
9.3?Excel VBA对象 170
9.3.1?应用程序对象 171
9.3.2?工作簿对象 171
9.3.3?表对象 171
9.3.4?单元格区域对象 171
习题 172
第10章?应用程序Application对象 173
10.1?Application对象重要成员 173
10.1.1?ActiveWorkbook 173
10.1.2?ActiveSheet 173
10.1.3?ActiveWindow 174
10.1.4?ActiveCell 174
10.1.5?Addins 175
10.1.6?COMAddins 176
10.1.7?WorksheetFunction 178
10.1.8?Commandbars 179
10.2?Application对象重要属性 180
10.2.1?默认文件路径DefaultFilePath
??? 属性 180
10.2.2?显示剪贴板DisplayClipboardWindow
??? 属性 181
10.2.3?启用事件EnableEvents属性 182
10.2.4?显示开发工具选项卡
??? ShowDevTools属性 182
10.2.5?句柄Hwnd属性 182
10.2.6?标题Caption属性 183
10.2.7?版本Version属性 183
10.2.8?用户名UserName属性 184
10.2.9?安装路径Path属性 185
10.2.10?状态栏StatusBar属性 186
10.2.11?默认工作表个数
??? SheetsInNewWorkbook属性 187
10.2.12?窗口状态WindowState
??? 属性 187
10.2.13?最近打开的文件
??? RecentFiles 188
10.3?Application对象常用方法 189
10.3.1?激活其他组件
??? ActivateMicrosoftApp方法 189
10.3.2?设置Excel的计算模式 189
10.3.3?计算Calculate方法 190
10.3.4?表达式评价Evaluate方法 190
10.3.5?快捷键OnKey方法 191
10.3.6?发送按键SendKeys方法 192
10.3.7?运行宏Run方法 193
10.3.8?退出应用程序Quit方法 195
10.3.9?定时执行OnTime方法 195
10.3.10?撤销Undo方法 196
10.4?Application对象常用事件 196
10.4.1?WorkbookBeforeClose事件 198
10.4.2?事件的取消 199
10.4.3?禁用和启用事件 199
10.4.4?SheetSelectionChange事件 199
10.4.5?WindowActivate事件 200
10.4.6?归纳总结 201
习题 201
第11章?工作簿Workbook对象 202
11.1?工作簿对象的表达 202
11.1.1?利用索引值 202
11.1.2?利用工作簿名称 202
11.1.3?宏代码所在的工作簿 202
11.1.4?活动工作簿 203
11.2?Workbook对象重要属性 204
11.2.1?文档内置属性
??? BuiltinDocumentProperties 205
11.2.2?文档自定义属性
??? CustomDocumentProperties 207
11.2.3?工作簿的名称和路径 208
11.2.4?IsAddin属性 208
11.2.5?Saved属性 209
11.2.6?工作簿的窗口 209
11.3?Workbook对象重要方法 214
11.3.1?新建工作簿 214
11.3.2?打开工作簿 215
11.3.3?设置工作簿的打开密码 215
11.3.4?保存工作簿 216
11.3.5?另存工作簿 216
11.3.6?关闭工作簿 217
11.3.7?激活工作簿 217
11.3.8?保护工作簿 218
11.3.9?导出为PDF文档 218
11.4?Workbook对象常用事件 221
11.4.1?工作簿打开和关闭前事件 222
11.4.2?文档事件过程中Cancel参数的
??? 作用 223
11.4.3?工作表激活事件 223
11.4.4?工作表右击事件 224
11.4.5?工作表修改事件 225
11.4.6?工作表选中区域变更事件 226
习题 226
第12章?工作表Worksheet对象 227
12.1?工作表集合Worksheets对象 228
12.1.1?表的遍历 229
12.1.2?表的增加 230
12.1.3?表的删除 231
12.2?Worksheet对象常用属性 233
12.2.1?单元格属性 233
12.2.2?Name与CodeName属性 234
12.2.3?前一个与后一个工作表 235
12.2.4?应用程序与父级对象 236
12.2.5?工作表标签颜色 236
12.2.6?是否显示分页符 237
12.2.7?工作表的可见性 237
12.2.8?页面设置 238
12.3?工作表的自动筛选 240
12.3.1?工作表的3种状态 241
12.3.2?遍历筛选器 244
12.3.3?处理自动筛选后的区域 245
12.3.4?按照单元格填充颜色
??? 筛选 247
12.3.5?按照单元格字体颜色筛选 248
12.4?Worksheet对象常用方法 248
12.4.1?激活和选中工作表 249
12.4.2?工作表的移动和复制 250
12.4.3?控制工作表的计算 251
12.4.4?设定背景图片 252
12.4.5?复制和粘贴数据 253
12.4.6?使用记录窗体 254
12.4.7?工作表的保护 255
12.4.8?工作表的预览和打印 256
12.5?Worksheet对象重要事件 258
12.5.1?选中区域变更事件 259
12.5.2?工作表修改事件 261
12.5.3?工作表右击事件 263
12.5.4?使用类模块操作Excel文档
??? 事件 265
习题 266
第13章?图表Chart对象 267
13.1?Chart对象重要属性 269
13.1.1?图表的构成 269
13.1.2?读写图表类型 270
13.1.3?修改图表数据源 270
13.1.4?设置图表标题 271
13.1.5?设置图表区与绘图区格式 273
13.1.6?设置坐标轴格式 274
13.1.7?操作数据系列 275
13.1.8?遍历数据系列 276
13.1.9?操作数据点 277
13.1.10?操作数据标记 278
13.1.11?操作图例 279
13.2?Chart对象常用方法 280
13.2.1?图表工作表的删除 280
13.2.2?图表复制为图片 281
13.2.3?改变图表位置 281
13.3?Chart对象事件 282
13.3.1?激活图表工作表的事件 282
13.3.2?识别图表中的不同元素 282
13.4?自动创建图表 284
13.4.1?创建图表工作表 284
13.4.2?在普通工作表中插入图表 285
13.5?自动删除图表 286
13.5.1?删除所有图表工作表 286
13.5.2?删除工作表中所有图表对象 287
习题 287
第14章?单元格区域Range对象 288
14.1?Range对象的表示方法 290
14.1.1?使用Cells 290
14.1.2?Range对象的无限嵌套性 292
14.2?Range对象的常用属性 293
14.2.1?区域地址 293
14.2.2?获取单元格区域的位置与
??? 大小 294
14.2.3?单元格的地理位置 295
14.2.4?单元格内容属性 299
14.3?Range的产生和转化 305
14.3.1?引用工作表已使用区域 305
14.3.2?引用当前连续区域 306
14.3.3?引用数组公式区域 307
14.3.4?引用整行与整列 307
14.3.5?单元格的偏移 308
14.3.6?改变单元格区域大小 308
14.3.7?获取最后一个非空单元格 310
14.3.8?区域的联合 311
14.3.9?区域的相交包含 312
14.4?Range对象的常用方法 313
14.4.1?单元格的选中和激活 313
14.4.2?复制剪切单元格 315
14.4.3?粘贴格式 315
14.4.4?插入和删除单元格 316
14.4.5?自动调整行高列宽 318
14.4.6?自动填充 318
14.4.7?单元格排序 320
14.4.8?查找和替换 321
14.4.9?文本分列 323
14.4.10?自动朗读单元格内容 324
14.5?Range成员对象 325
14.5.1?设置单元格边框 325
14.5.2?设置单元格填充色 328
14.5.3?设置单元格字体 330
14.5.4?单元格的对齐方式 331
14.5.5?处理单元格中的字符 333
14.5.6?处理单元格中的批注 335
14.5.7?处理条件格式 339
14.5.8?处理数据有效性 344
14.5.9?使用单元格样式 348
14.6?Range对象专题讲解 352
14.6.1?单元格的合并与取消合并 352
14.6.2?Range与名称的使用 354
14.6.3?如何遍历单元格 357
14.6.4?单元格与数组之间的数据
??? 传递 359
14.6.5?单元格的带格式查找 361
14.6.6?公式审核 362
习题 365
第15章?其他常用Excel VBA对象 367
15.1?处理工作表中的图片 367
15.1.1?插入外部图片 367
15.1.2?插入形状 369
15.1.3?Shape对象的引用和遍历 370
15.1.4?Shape对象的属性获取与
??? 设定 371
15.1.5?Shape对象的常用方法 373
15.2?工作表使用表单控件 378
15.2.1?使用组合框 379
15.2.2?使用列表框 380
15.2.3?使用复选框 380
15.2.4?使用单选按钮 380
15.2.5?数值调节器 382
15.2.6?滚动条 382
15.2.7?用代码自动插入表单控件 383
15.2.8?批量删除表单控件 385
15.3?工作表使用ActiveX控件 386
15.3.1?控件的属性设定 387
15.3.2?控件的事件过程 387
15.3.3?自动插入ActiveX控件 388
15.3.4?工作表中播放动画 389
15.3.5?ActiveX控件的删除 390
15.4?处理工作表中的超链接 391
15.4.1?创建超链接 391
15.4.2?遍历工作表中的超链接 392
15.4.3?打开超链接 393
15.4.4?删除超链接 393
15.5?Excel内置对话框 394
15.5.1?调出内置对话框 394
15.5.2?为对话框设置默认参数 395
15.6?文件选择对话框 395
15.6.1?对话框的类型 395
15.6.2?对话框的属性 396
15.6.3?对话框的方法 396
15.6.4?文件选择 396
15.6.5?路径选择 398
15.6.6?打开文件 398
15.6.7?另存文件 400
15.7?操作自定义序列 401
15.7.1?增加用户自定义序列 402
15.7.2?获取序列的编号 403
15.7.3?导出全部序列到单元格 403
15.7.4?删除自定义序列 404
习题 404
第16章?用户窗体和控件设计 407
16.1?窗体设计基础 407
16.1.1?设计的第一个窗体 408
16.1.2?使用和维护控件工具箱 411
16.1.3?基本控件 412
16.1.4?使用属性窗口 412
16.2?窗体与控件的通用属性 413
16.2.1?名称 413
16.2.2?标题 413
16.2.3?文本 414
16.2.4?值 414
16.2.5?位置大小属性 414
16.2.6?背景色 415
16.2.7?前景色 415
16.2.8?字体 415
16.2.9?Tab序号 416
16.2.10?可用性 417
16.2.11?可见性 417
16.3?窗体与控件的通用方法 418
16.3.1?自动获得焦点 418
16.3.2?移动控件 418
16.3.3?改变叠放次序 419
16.4?窗体与控件的事件 420
16.5?窗体使用技巧 421
16.5.1?窗体的模式 421
16.5.2?设置窗体的字体 421
16.5.3?设置窗体背景图片 421
16.5.4?窗体铺满整个屏幕 423
16.5.5?窗体的启动和关闭事件 423
16.6?命令按钮使用技巧 424
16.6.1?自动调整按钮大小 424
16.6.2?默认按钮和退出按钮 424
16.6.3?设置控件的提示语 425
16.6.4?为按钮设置加速键 425
16.6.5?设置鼠标指针 425
16.7?标签 426
16.7.1?设置标签的边框 426
16.7.2?标签的自适应 426
16.7.3?文本自动换行 426
16.8?文本框 426
16.8.1?锁定文本框 427
16.8.2?制作密码输入框 427
16.8.3?限制输入长度 427
16.8.4?多行模式 427
16.8.5?文本框的滚动条 427
16.8.6?自动重置和验证文本 428
16.8.7?内容改变事件 429
16.8.8?使用文本框的选定状态 429
16.8.9?文本框内容的复制、粘贴 430
16.9?响应键盘按键的事件 431
16.9.1?按下快捷键关闭窗体 431
16.9.2?松开快捷键让文本框内容
??? 倒序 432
16.9.3?识别和修改输入的字符 433
16.10?组合框 433
16.10.1?增加条目 434
16.10.2?删除条目 435
16.10.3?获取组合框条目信息 435
16.11?列表框 436
16.11.1?列表框的单击事件 437
16.11.2?带复选框的多选列表框 438
16.12?复选框 439
16.13?单选按钮 440
16.13.1?使用框架隔离单选按钮 440
16.13.2?设置GroupName隔离
??? 单选按钮 441
16.14?切换按钮 442
16.15?框架 442
16.16?多标签控件 443
16.16.1?用代码增加标签 445
16.16.2?用代码删除标签 446
16.17?多页控件 446
16.18?滚动条 448
16.19?旋转按钮 449
16.20?图像控件 450
16.21?RefEdit控件 451
16.22?遍历窗体上的控件 452
16.22.1?运行期间动态增加控件 453
16.22.2?运行期间动态删除控件 454
16.23?响应鼠标单击的事件 455
16.23.1?判断鼠标按键 455
16.23.2?判断键盘辅助键 456
16.23.3?判断单击位置 456
16.23.4?移动鼠标的事件 458
16.24?使用附加控件 458
习题 460
第17章?自定义工具栏 462
17.1?工具栏基础知识 462
17.1.1?使用自定义对话框 465
17.1.2?手工方式进行工具栏设计 465
17.1.3?自定义工具栏的存储位置 470
17.2?工具栏的VBA模型 471
17.3?CommandBar对象 471
17.3.1?CommandBar重要属性 472
17.3.2?CommandBar重要方法 474
17.4?CommandBarControl对象 477
17.4.1?遍历工具栏中所有控件
??? 信息 478
17.4.2?控件的属性 480
17.4.3?控件的方法 487
17.4.4?控件的事件 491
17.5?创建自定义工具栏 493
17.5.1?创建菜单栏 493
17.5.2?创建级联菜单 496
17.5.3?创建一般工具栏 498
17.5.4?调整工具栏的位置和大小 500
17.5.5?创建右键菜单 502
17.6?自定义工具栏高级技术 505
17.6.1?使用组合框控件 505
17.6.2?使用文本框控件 507
17.6.3?设计用户窗体的菜单 509
17.6.4?遍历所有FaceID 510
17.6.5?提取Windows系统字体名称和
??? 字号列表 511
17.7?Excel高版本的工具栏设计 512
17.7.1?增加菜单命令 512
17.7.2?增加工具栏命令 513
17.7.3?创建自定义工具栏 513
17.7.4?显示Excel 2003经典菜单 515
习题 515
第18章?Excel加载宏 517
18.1?Excel加载宏对话框 517
18.2?加载宏可以包含的内容 518
18.2.1?过程和快捷键 519
18.2.2?自定义函数 521
18.2.3?用户窗体 521
18.2.4?工具栏和控件 522
18.2.5?自定义功能区 524
18.2.6?事件过程 524
18.3?修改加载宏文件 525
18.4?使用VBA操作加载宏 526
18.4.1?加载宏的重要属性 527
18.4.2?加载宏的遍历 528
18.4.3?VBA代码中调用加载宏中的
??? 过程和函数 528
18.4.4?完全删除加载宏 530
习题 531
第19章?经典编程实例 533
19.1?角谷猜想 533
19.2?单元格文字连接 534
19.3?学生成绩评定和登记 535
19.4?汇总历年奖牌榜 536
19.5?早退员工高亮显示 538
19.6?一次函数用于单元格的遍历 539
19.7?单词表按首字母汇总 542
19.8?交叉表汇总双边贸易关系 543
附录A?VBA编程常用资料 545
A.1?Excel VBA实用语句 545
A.1.1?Application对象实用语句 545
A.1.2?Workbook对象实用语句 545
A.1.3?Worksheet对象实用语句 546
A.1.4?Window对象实用语句 546
A.1.5?Range对象实用语句 546
A.2?VBA函数用法示例 547
A.3?VBA编程疑难问答 550
|
內容試閱:
|
前 言
Microsoft Of?ce 可以称得上是世界上开发最成功的办公软件,目前微软 Of?ce 的用户已超过 12 亿人,全球每 7 个人中就有一个使用 Of?ce(信息来源:微软)。然而伴随着 Of?ce
版本的推陈出新,Of?ce 软件的功能日益丰富、强大。在信息化时代、大数据时代的冲击下,数据量的剧增给办公人员带来了巨大的工作挑战,以往传统的手工办公方式经常显得捉襟见肘。
VBA 几乎是和 Of?ce 办公软件同时诞生的,微软公司开发 VBA 编程功能的初衷就是为用户提供更加灵活的处理方式,有人曾说80% 的人只用了 Of?ce 20% 的功能,确实如此,
Of?ce 有很多功能通过手工方式是无法实现的,必须通过 VBA 编程。近几年来,越来越多的人开始学习和研究 Of?ce VBA 编程,十几年前招聘岗位要求应聘者会使用办公软件,而目前很多岗位要求具有 VBA 编程经验。
虽然 VBA 不能和著名的 C、Java 语言相提并论,但由于 Of?ce 办公软件的庞大使用群体,VBA 在数据处理方面的便利性和快捷性,使得这门语言在 IT 界具有一席之地。作者学习和研究 VBA 语言有十多年,深切体会到这门语言的强大和受欢迎程度。
本书的背景
目前,市面上 VBA 编程方面的书籍为数不少,但是其中大多数都把知识点容纳在一本
书中,这样就难免遗漏知识点,或者对知识点的探讨不足,容易造成学习者存在知识缺陷。
实 际 上,Of?ce VBA 编 程 是 基 于 VB6 的 一 门 编 程 语 言, 既 有 VB6 的 语 法, 又 涉 及
Of?ce 的对象模型,产品类型多样化,因此 VBA 绝非一门小语言,显然用一本书来诠释
VBA 是远远不够的。
为了满足广大 VBA 学习者的需求,作者经过实践,把 Of?ce VBA 这一编程体系细分为四卷:基础入门卷(本书)、中级进阶卷、高级应用卷、VB6 封装卷。
分卷书写的好处是,每一卷的讲解知识可以尽可能详尽,让学员不存在知识死角。其中,基础入门卷(本书)的编写目标在于帮助更多的 VBA 编程零基础人员熟悉 VBA 编程环境,掌握 VBA 编程初步和语法基础,能够用 VBA 解决实际工作中遇到的问题。另外,本书特别注重对 Excel VBA 常用对象模型的阐述和实例运用。
本书的组织结构
全书大致分为以下六大部分。
第一部分(第 1 ~ 3 章):帮助读者认识 VBA 编程环境,理解宏是怎么来的,如何录制
和修改宏。
第二部分(第 4 ~ 8 章):主要内容是 VBA 的基础知识,帮助读者进一步掌握 VBA 编程特性,更深层次地理解什么是过程、函数,以及各种数据类型的运算、转换等。
第三部分(第 9 ~ 15 章):主要讲解 Excel 组件中的 VBA 编程,详细讲述 Excel 各种常用对象的属性、方法以及事件。
第四部分(第 16 ~ 18 章):主要内容是 VBA 界面编程、VBA 作品的各种表现形式,主要包括用户窗体和控件设计、自定义工具栏、Excel 加载宏等。读者通过学习这部分知识,基本可以设计出像样的作品,以供他人使用。
第五部分(第 19 章):经典编程实例,主要讲述作者在实际工作中如何用 VBA 解决问题,与读者分享产品设计构思、代码的实现方法。
第六部分:附录,包括 VBA 编程常用资料,以便 VBA 初学者查阅、学习。
本书的特点
? 编排合理,内容丰富。
? 针对性的实例比较多,知识点讲解透彻。
? 配套资源完善。
本书的读者对象
? 职场办公人员。
? 高校理工科师生。
? Of?ce 专业开发人员。
? Of?ce 编程培训讲师。
本书使用环境
在本书编写过程中,作者的电脑环境为 Windows 7(32 位)Microsoft Of?ce 2013。因此,读者的编程环境与上述相同或相近更佳。不过本书内容在 Of?ce 2010 及其以上
版本均兼容。
配套资源
本书配套资源包括:
? Excel VBA 编程入门视频(视频文件及 PPT 课件、素材和源代码)。
? 本书所有源代码文件。
? 本书各章习题参考答案。
? 开发资源(编程过程中用到的工具、软件)。
读者可访问 http:home.cnblogs.comuryueifu-VBA 进行下载。
读者服务
为方便广大读者学习和探讨,读者可以通过以下方式与作者互动交流。
? Of?ce 技术交流 QQ 群:193203228。
? Of?ce VBA & VSTO QQ 群:61840693。
其他说明
书中所有源代码在行首均有行号,这是为了讲解方便,行号并非代码中的部分。每个代
码段上方都留有源代码的路径(见下图)。
根据图中所示,源文件位于第 14 章,文件名称是实例文档 25.xlsm,斜杠后面表示该过程所在的模块名称:单元格的选中和激活。
另外,因为本书是黑白印刷,无法正常显示出颜色,读者可以在实际界面或相关视频中看到。
致读者
随着信息化技术的普及和大数据的快速发展,以往的手工操作办公软件已经不能满足现
代办公的需求,因此,VBA 编程技术作为 Of?ce 办公软件的寄生编程语言,由于拥有较大的优势越来越受到社会各界的关注和青睐。然而,掌握或者精通 Of?ce VBA 编程并非易事,造成 VBA 入门难、提高难的原因很多,很重要的一个原因在于市面上缺乏系统、全面的书籍和资料,造成学习者知识点片面、对技术点认识深度不够,以致很多人买了纸质教材,又买了视频课程,还是不能得心应手地解决实际问题。
作者根据自身多年的学习和研究经验,尽量把编程过程中的疑难点、易混淆知识点融入本书,帮助广大读者领会 VBA 的学习方法和思路,少走弯路。本书从立意、写作到交稿历时一年之久,融入作者大量精力和心血。衷心希望广大读者能够从本书中汲取营养,早日成为 Of?ce VBA 编程达人。
本书除了刘永富、刘行之外,参与编写的人员还有重庆市信息通信咨询设计院有限公司的林兴龙、浙江省水利河口研究院的章晓桦、中睿通信规划设计有限公司的何明、中国石油塔里木油田分公司勘探开发研究院的仝可佳,以及崔世海、李白、李四桂、刘胜、杨杨、孙盼茹、唐超、汪洋、王刘斌、夏阳耀、肖云、徐鹏、杨迅、张琦、张勇、赵长城、钟卓成、朱岩松、祝磊、邱和有等。书中难免有疏漏之处,欢迎读者通过清华大学出版社网站 www.
tup.com.cn 与我们联系,帮助我们改正提高。
作者
|
|