科技>计算机>办公软件
深入浅出ExcelVBA

深入浅出ExcelVBA"

作者:杨洋
ISBN:9787121354649
定价:¥89.0
字数:748千字
页数:440
出版时间:2019-02
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

本书基于作者在高校课堂和网络教育中多年积累的教学经验,由浅入深地讲解了Excel VBA 程序设计的知识与技巧,涵盖数据处理、格式排版、文件管理、窗体设计,以及集合、字典、正则表达式、Web 信息提取等各方面常用技能。本书力求做到体系严谨、语言风趣,用轻松、生动的语言引导读者领会 Excel VBA 编程的精髓与关键,进而一窥计算机科学世界的神奇与美妙。同时,本书精心设计了60 个改编自真实场景的原创案例,使每个环节的学习都能映射到实际生活中的需求,为初学者提供一条独特、实用的VBA 学习路径。此外,本书的主体内容与作者在网易云课堂开设的《全民一起VBA》系列视频课程相互匹配并互有补充。该系列课程以生动幽默的动画形式展现了Excel VBA 编程的全貌,读者可以参照学习,加深理解。

前言

目录

第 1 章奇境的入口——从VBE 走进VBA 编程世界...................................................1 1.1 在哪里写代码——VBE 与模块...............................................................................................2 1.1.1 找到VBA 编辑器........................................................................................................2 1.1.2 在正确的位置编写代码...............................................................................................4 1.2 见微知著——从一个简单例子观察VBA 程序的结构..........................................................7 1.2.1 Sub / End Sub——程序的起始与结束.........................................................................8 1.2.2 词汇与语句——程序语言的基本要素........................................................................9 1.3 Cells 与运算符——用VBA 控制Excel 单元格...................................................................10 1.3.1 Cells——代码与表格之间的第一个桥梁.................................................................. 11 1.3.2 赋值操作——等号的主要用途..................................................................................12 1.3.3 加、减、乘、除——基本的算术运算符..................................................................12 1.4 VBA 程序的运行与保存——按钮、XLSM 文件及宏安全性.............................................13 1.4.1 宏与宏安全性.............................................................................................................14 1.4.2 运行VBA 程序的常用方法.......................................................................................14 1.4.3 XLSM 文件——VBA 程序的藏身之所....................................................................17 本章小结.........................................................................................................................................18 第2 章程序的记忆——变量与常量..........................................................................19 2.1 变量的作用与含义.................................................................................................................19 2.1.1 为什么需要使用变量.................................................................................................19 2.1.2 什么是变量.................................................................................................................21 2.1.3 再问一次:什么是变量.............................................................................................22 2.1.4 前后对比——使用变量的好处..................................................................................23 2.2 没有规矩不成方圆——有关变量的最佳实践......................................................................24 2.2.1 变量的命名.................................................................................................................24 2.2.2 强制声明.....................................................................................................................28 2.2.3 把重复数据都抽取为变量.........................................................................................31 2.3 常量——那些重复却不变的内容..........................................................................................32 本章小结.........................................................................................................................................35 第3 章力量的源泉——循环结构..............................................................................36 3.1 循环结构概述.........................................................................................................................37 3.2 For…Next 循环语句...............................................................................................................38 3.2.1 For…Next 循环语句的基本语法...............................................................................38 3.2.2 For…Next 循环的典型用法.......................................................................................40 3.2.3 Step 子句.....................................................................................................................42 3.2.4 For…Next 循环的“初学者陷阱”...........................................................................45 3.3 用循环实现汇总——累加器与计数器..................................................................................48 3.4 缩进与注释——提高代码的可读性......................................................................................50 3.4.1 代码缩进.....................................................................................................................50 3.4.2 代码注释.....................................................................................................................52 本章小结.........................................................................................................................................53 第4 章智能的产生——判断结构..............................................................................54 4.1 If 语句与关系运算.................................................................................................................55 4.1.1 用If 语句实现判断结构............................................................................................55 4.1.2 用关系运算比较大小.................................................................................................57 4.1.3 用Else 和ElseIf 实现多分支判断.............................................................................57 4.2 嵌套结构——多层If 语句的使用.........................................................................................67 4.3 逻辑表达式——怎样表示“与”或“非”..........................................................................71 4.3.1 逻辑表达式.................................................................................................................71 4.3.2 常见逻辑运算符的使用方法.....................................................................................71 4.4 Select…Case 结构..................................................................................................................79 4.4.1 Select…Case 结构的基本用法...................................................................................79 4.4.2 在Case 语句中表示复杂条件...................................................................................80 本章小结.........................................................................................................................................81 第5 章文字的表述——字符串基础..........................................................................83 5.1 字符串的基本概念与格式.....................................................................................................84 5.1.1 什么是字符串.............................................................................................................84 5.1.2 区分字符串与变量.....................................................................................................86 5.1.3 在字符串中表示特殊符号.........................................................................................86 5.2 字符串的理解要点.................................................................................................................89 5.2.1 空字符串.....................................................................................................................89 5.2.2 非打印字符(空白字符) .........................................................................................90 5.2.3 区分大小写字符.........................................................................................................91 5.2.4 区分数字与字符串.....................................................................................................91 5.3 字符串连接操作.....................................................................................................................92 5.3.1 字符串连接符——“+”与“&” ............................................................................92 5.3.2 灵活构造字符串.........................................................................................................93 本章小结.........................................................................................................................................96 第6 章诊断的技巧——程序调试..............................................................................97 6.1 程序错误的类型与排查.........................................................................................................97 6.1.1 编译错误.....................................................................................................................98 6.1.2 运行时错误.................................................................................................................99 6.1.3 逻辑错误...................................................................................................................100 6.2 使用断点与监视...................................................................................................................101 6.2.1 “望闻”之术——设置断点......................................................................................101 6.2.2 “问”的技巧——添加监视......................................................................................102 6.2.3 “切”脉秘籍——让程序单步执行..........................................................................104 6.3 代码“无间道”——Debug.Print 与立即窗口....................................................................109 本章小结....................................................................................................................................... 110 第7 章维度的拓展——再谈循环结构..................................................................... 111 7.1 多重循环............................................................................................................................... 112 7.1.1 双重循环的概念....................................................................................................... 112 7.1.2 初学者常见错误....................................................................................................... 114 7.1.3 更多层次的嵌套循环............................................................................................... 119 7.2 While 循环............................................................................................................................120 7.2.1 Do While 循环的基本用法.......................................................................................120 7.2.2 While 循环结构的初学者陷阱................................................................................123 7.2.3 Do While 循环的典型应用.......................................................................................125 7.2.4 While 循环的各种形式............................................................................................129 7.3 Exit 语句与Goto 语句.........................................................................................................131 7.3.1 跳出当前结构——Exit 语句的使用........................................................................131 7.3.2 随心所欲难免逾矩——Goto 语句及其利弊...........................................................133 7.3.3 异常处理——On Error Goto 语句...........................................................................134 本章小结...............................................................................................................................137 第8 章名字的魔力——面向对象与录制宏..............................................................138 8.1 面向对象——程序员的世界观............................................................................................139 8.1.1 面向过程与面向对象简述.......................................................................................139 8.1.2 类、对象、属性、方法...........................................................................................141 8.2 从Range 看VBA 对象的使用方法.....................................................................................143 8.2.1 Range 对象概述........................................................................................................143 8.2.2 Range 对象的基本用法与技巧................................................................................144 8.2.3 设置单元格格式—— 字体、颜色及With 结构....................................................150 8.2.4 智能提示——使用As 关键字声明对象类型.........................................................156 8.3 Excel 对象体系.....................................................................................................................157 8.3.1 了解所有对象——对象浏览器与MSDN ...............................................................157 8.3.2 最常用的Excel 对象................................................................................................159 8.4 打开黑箱看代码——录制宏................................................................................................160 8.4.1 宏的录制过程...........................................................................................................160 8.4.2 宏代码的解读与运用...............................................................................................162 8.4.3 对录制宏代码的初步优化.......................................................................................164 本章小结...............................................................................................................................165 第9 章能力的释放——批量处理工作表与工作簿...................................................166 9.1 个体与集合——再谈Excel 常用对象间的关系.................................................................167 9.2 工作表对象...........................................................................................................................168 9.2.1 为Range 对象指定所属工作表...............................................................................168 9.2.2 技巧与陷阱——With 与Range................................................................................170 9.2.3 最佳实践——按名引用工作表................................................................................172 9.2.4 遍历所有工作表.......................................................................................................172 9.2.5 多个工作表汇总的常用技巧...................................................................................175 9.2.6 工作表的其他常用操作...........................................................................................180 9.3 工作簿对象...........................................................................................................................183 9.3.1 工作簿文件的打开、保存与关闭...........................................................................183 9.3.2 常用技巧——工作簿的拆分与汇总........................................................................187 本章小结.......................................................................................................................................191 第10 章结构的艺术——过程、函数与字符串处理.................................................193 10.1 子过程与“结构化程序设计” .........................................................................................194 10.1.1 子过程基本概念与调用方法.................................................................................194 10.1.2 变量的作用域.........................................................................................................198 10.1.3 参数的概念.............................................................................................................199 10.1.4 子过程与参数的更多细节.....................................................................................202 10.2 函数与自定义公式.............................................................................................................204 10.2.1 函数的格式与功能.................................................................................................204 10.2.2 将函数作为表格公式.............................................................................................209 10.2.3 系统函数................................................................................................................. 211 10.2.4 Msgbox 函数...........................................................................................................212 10.3 字符串函数.........................................................................................................................214 10.3.1 计算字符串长度.....................................................................................................214 10.3.2 将字符串规范化.....................................................................................................215 10.3.3 替换文本.................................................................................................................217 10.3.4 子串操作.................................................................................................................218 10.3.5 字符串函数的应用.................................................................................................222 本章小结.......................................................................................................................................223 第11 章万物的源头—Application 对象..................................................................225 11.1 隐藏的Application 对象....................................................................................................226 11.1.1 Cells 的真实来历....................................................................................................226 11.1.2 与Cells 类似的情况...............................................................................................227 11.2 通过WorksheetFunction 属性调用公式............................................................................229 11.3 Application 的其他属性与方法..........................................................................................232 11.3.1 常用属性.................................................................................................................232 11.3.2 常用方法.................................................................................................................235 本章小结.......................................................................................................................................236 第12 章细分的好处——VBA 数据类型..................................................................238 12.1 VBA 数据类型概述............................................................................................................239 12.1.1 为什么要划分数据类型.........................................................................................239 12.1.2 变体类型的功与过...............................................................................................240 12.1.3 VBA 中的数据类型概览........................................................................................243 12.2 数字类型.............................................................................................................................244 12.2.1 常用类型:Integer、Long 和Double(符号问题) ............................................244 12.2.2 其他类型:Byte、Single、Currency 和Decimal .................................................246 12.2.3 简写符号.................................................................................................................248 12.2.4 初学者陷阱:常数有时也要声明类型.................................................................248 12.2.5 自动类型转换与强制类型转换.............................................................................250 12.3 字符串类型.........................................................................................................................253 12.3.1 字符的本质.............................................................................................................253 12.3.2 像数字一样处理字符串.........................................................................................255 12.4 日期类型.............................................................................................................................258 12.4.1 日期和时间的一般表示.........................................................................................259 12.4.2 常用日期函数.........................................................................................................259 12.4.3 日期类型的本质.....................................................................................................265 12.5 逻辑类型.............................................................................................................................266 12.5.1 逻辑值与逻辑运算.................................................................................................266 12.5.2 逻辑类型的应用.....................................................................................................269 12.6 对象类型.............................................................................................................................272 12.7 数据类型的检测.................................................................................................................273 12.8 “无”的各种表示方法——Nothing、Null 与Empty .......................................................275 本章小结.......................................................................................................................................275 第13 章集体的名义——VBA 中的数组..................................................................277 13.1 数组的基本概念.................................................................................................................278 13.1.1 什么是数组.............................................................................................................278 13.1.2 数组声明中的细节问题.........................................................................................279 13.1.3 数组的用途与技巧.................................................................................................281 13.2 动态数组.............................................................................................................................285 13.2.1 动态数组与ReDim 语句........................................................................................285 13.2.2 使用Split 拆分字符串............................................................................................287 13.3 多维数组与表格读写.........................................................................................................289 13.3.1 什么是二维数组.....................................................................................................289 13.3.2 二维数组与Range 对象(读写和处理效率、下标起点、单行单列读写)......291 13.3.3 多维数组的概念.....................................................................................................293 本章小结.......................................................................................................................................294 第14 章信息的整合——文件与文件夹操作............................................................295 14.1 读写文本文件.....................................................................................................................296 14.1.1 什么是文本文件.....................................................................................................296 14.1.2 文本文件的打开与读取.........................................................................................296 14.1.3 将数据写入文本文件.............................................................................................300 14.2 打开文件夹中的所有文件.................................................................................................302 14.2.1 Dir 函数的基本用法...............................................................................................302 14.2.2 Dir 函数的更多技巧...............................................................................................303 14.3 其他文件操作简介.............................................................................................................305 本章小结.......................................................................................................................................306 第15 章选择的自由——自定义参数及其他函数技巧.............................................307 15.1 可选参数.............................................................................................................................308 15.1.1 Optional 与默认值..................................................................................................308 15.1.2 可选参数的省略与按名传递.................................................................................309 15.1.3 判断可选参数是否被使用..................................................................................... 311 15.2 引用传递与值传递.............................................................................................................312 15.3 随机数函数的使用.............................................................................................................314 15.3.1 Rnd 函数的基本用法.............................................................................................314 15.3.2 深入了解:“伪”随机数与“种子” ...................................................................316 本章小结.......................................................................................................................................318 第16 章区域的管理——深入了解Range 对象.......................................................320 16.1 遍历Range 内部单元格.....................................................................................................321 16.1.1 Cells 属性................................................................................................................321 16.1.2 自定义公式.............................................................................................................322 16.1.3 Rows 与Columns 属性...........................................................................................323 16.2 获取Range 对象的描述信息.............................................................................................324 16.2.1 位置信息.................................................................................................................324 16.2.2 公式信息.................................................................................................................325 16.2.3 合并单元格信息.....................................................................................................326 16.3 重新定位Range 对象.........................................................................................................329 16.3.1 Offset、Resize 与CurrentRegion 属性..................................................................329 16.3.2 Worksheet 对象的Cells 与UsedRange 属性.........................................................333 16.3.3 Application 对象的Union 与Intersection 方法.....................................................334 16.4 Find 与Sort 方法简介........................................................................................................334 16.4.1 Range.Find 方法.....................................................................................................334 16.4.2 Range.Sort 方法......................................................................................................336 本章小结.......................................................................................................................................337 第17 章“神经”的连通——编写事件处理程序.....................................................339 17.1 事件编程基本概念与过程.................................................................................................340 17.1.1 事件与事件响应.....................................................................................................340 17.1.2 事件编程的基本步骤.............................................................................................340 17.2 Excel 常用事件...................................................................................................................343 17.2.1 工作表事件.............................................................................................................343 17.2.2 工作簿常用事件.....................................................................................................347 17.3 事件级联.............................................................................................................................348 17.4 访问修饰符与静态变量.....................................................................................................350 17.4.1 访问修饰符.............................................................................................................350 17.4.2 静态变量.................................................................................................................352 17.4.3 静态变量在事件处理中的应用.............................................................................353 本章小结.......................................................................................................................................355 第18 章界面的革新——设计用户窗体...................................................................356 18.1 窗体程序开发过程.............................................................................................................357 18.1.1 窗体与控件.............................................................................................................357 18.1.2 窗体模块与设计器.................................................................................................357 18.1.3 指定属性和外观.....................................................................................................359 18.1.4 为窗体事件编写代码.............................................................................................361 18.1.5 窗体的显示与退出.................................................................................................363 18.2 窗体与常用控件的属性、事件和方法.............................................................................365 18.2.1 窗体对象.................................................................................................................365 18.2.2 标签与文本框.........................................................................................................367 18.2.3 列表框与组合框.....................................................................................................369 18.2.4 单选按钮、复选框及框架.....................................................................................372 18.2.5 窗体控件综合案例——将数据录入工作表..........................................................375 18.3 其他常用控件及附加控件.................................................................................................378 18.3.1 其他常用控件简介.................................................................................................378 18.3.2 附加控件的使用.....................................................................................................379 18.4 关于窗体与控件的其他要点.............................................................................................383 18.4.1 多窗体协同.............................................................................................................383 18.4.2 多个控件的对齐.....................................................................................................383 18.4.3 工作表中的ActiveX 控件......................................................................................384 本章小结.......................................................................................................................................385 第19 章工具的升级——集合、字典及正则表达式.................................................386 19.1 集合对象.............................................................................................................................387 19.2 字典对象.............................................................................................................................388 19.2.1 使用CreateObject 创建外部对象..........................................................................388 19.2.2 字典的概念与应用.................................................................................................390 19.2.3 字典的其他常用属性与方法.................................................................................393 19.3 正则表达式入门.................................................................................................................394 19.3.1 什么是正则表达式.................................................................................................395 19.3.2 正则表达式的基本语法.........................................................................................396 19.3.3 在VBA 中使用正则表达式...................................................................................410 本章小结.......................................................................................................................................415 第20 章天地的无穷——那些未及细说的主题........................................................416 20.1 类模块与自定义类.............................................................................................................417 20.2 开发小型管理信息系统.....................................................................................................418 20.3 深入操作Office 软件与Windows 系统............................................................................421 20.4 算法的价值.........................................................................................................................421 结语 VBA 的未来....................................................................................................423

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个