Excel VBA程序开发自学宝典

第一章        Excel插件认识VBA

1.1  从身份证号获取个人信息

1.1.1 常规公式法

1.1.2  自定义函数法

1.1.3  插件法

1.1.4  浅谈VBA优势

1.2 插件特点及其如何发挥插件的优势

1.2.1  Excel插件的特点

1.外观特征

2.功能特征

1.2.2  Excel插件的优势与限制

1.2.3  如何发挥插件的优势

1.2.4  开发Excel插件的条件

1.2.5  本书架构

第二章 VBA概述

2.1 VBA的发展史与优缺点

2.1.1  宏与VBA

2.1.2  VBA历史与版本

2.1.3  VBA优、缺点

2.2 VBA能做什么

2.2.1  VBA用途

2.2.2  VBA主要用户

2.3 VBA的安全性

2.3.1  VBA安全性

2.3.2  了解安全性对话框

1.安全选项

2.信任中心

2.3.3  让自己的VBA程序畅通无阻

2.4  使用VBA帮助

2.4.1  利用帮助学习VBA语法

1.即时提示

2.本地帮助

3.在线帮助

2.4.2  捕捉错误

1.编译错误

2.运行时错误

第三章        巧设VBA编辑器提升编程效率

3.1 认识VBE组件

3.1.1  访问VBA开发环境

1.功能区按钮法

2.快捷键法

3.右键菜单法

3.1.2  认识VBE的组件

1.菜单栏

2.工具栏

3.工程资源管理器

4.属性窗口

5.代码窗口

6.对象与过程窗口

7.立即窗口

8.工具箱

3.1.3  VBE中不同代码窗口的作用

1.工作表代码窗口

2.工作簿代码窗口

3.窗体代码窗口

4.模块代码

5.类模块

3.2 VBE中选项设置

3.2.1  编辑器选项

1.自动语法检测

2.要求声明变量

3.自动列出成员

4.自动显示快速信息

5.自动显示数据提示

6.编辑时可拖动文本

7.缺省查看所有模块

8.过程分隔符

9.自动缩进

3.2.2  编辑器格式选项

3.2.3  通用选项

1.显示网格

2.显示工具提示

3.错误捕捉

3.2.4  VBA代码保护

1.共享法

2.加密法

第四章        VBA基本概念

4.1  理解VBA的对象、属性与方法

4.1.1  什么是对象

4.1.2  如何理解属性

1.自动成员列表

2.查看帮助

4.1.3  如何理解方法

4.1.4  判断对象的属性与方法

1.根据自动成员列表中的图标判断

2.看帮助

3.判断词性

4.2  认识VBA的事件

4.2.1  什么是事件

4.2.2  事件的分类及其用途

4.3  VBA的运算符

4.3.1  VBA中运算符的分类

4.3.2  算术运算符

4.3.3  比较运算符

4.3.4  逻辑运算符

1.And运算符

2.Or运算的运算符

3.Not运算符

4.3.5 运算符的优先顺序

4.4  简单的字符处理函数

4.4.1  字符串处理函数功能介绍

4.4.2  StrComp:字符相似比较

4.4.3  Strconv:字符串类型转换

4.4.4  Format:格式化字符串

4.4.5  LCase/ Ucase:大小写转换

4.4.6  String / space:重复字符

1.String

2.Space

4.4.7  Lset / Rset:字符串往左/右对齐

1.Lset

2.Rset

4.4.8  Instr:返回字符出现位置

4.4.9  Left/Mid/Right:从左、中、右取值

1.Lef

2.Mid

3.Right

4.4.10  LTrim/RTrim/ Trim:去除空格

4.4.11  Like:字符串相似度比较

第五章        VBA数据类型与变量、常量

5.1  数据类型

5.1.1  为什么要区分数据类型

5.1.2  认识VBA的数据类型

5.1.3  数据类型的声明与转换

5.2  常量与变量

5.2.1 常量的定义与用途

1.简化输入

2.方便识别

5.2.2 常量的声明方式

5.2.3 常量的命名规则

5.2.4 变量的定义与用途

5.2.5 变量的类型与声明

5.2.6 区分静态变量与动态变量

5.2.7 变量的作用域与生命周期

5.2.8  认识对象变量

5.2.9  认识数组变量

第六章        认识VBA过程及开发自定义函数

6.1 认识过程

6.1.1 过程的分类与调用方式

1.Alt+F8】执行

2.快捷键执行

3.按钮执行

4.菜单调用

5.事件引发

6.工作表中使用公式调用

6.1.2 插入过程的方式

1.非事件过程

2.事件类过程

6.1.3 过程的命名规则

6.2 编写SUB过程

6.2.1 SUB过程的语法解析

1.模块级过程

2.工程级过程

3.中途退出程序的多种方法与分别

6.2.2 Sub过程的执行流程

1.使用冒号使一行执行多句代码

2.使用标签改变执行流程

3.SUB过程的嵌套调用方式

6.2.3 过程的递归

1.按条件新建工作表

2.设计时钟

6.2.4 SUB过程实例演示

统计选区信息:不带参数的Sub过程

2.将单元格数据转换为首字母大写:带有参数的Sub过程

6.3 认识Function过程

6.3.1 Function过程的特点

6.3.2 Function的语法解析

6.3.3 调用Function过程

6.4 关于过程的参数

6.4.1 SUB过程的参数及应用

6.4.2 Function过程的参数

6.5  开发自定义函数

6.5.1 开发不带参数的Function过程

1.不随时间变化的时间函数

2.取当前工作簿名

6.5.2  开发带有一个参数的Function过程

1.将人民币金额转换为大写

2.建立工作表目录

3.关机函数

6.5.3  开发带有两个参数的Function过程

1.对带“/”的数据进行合计

2.中国式排名

6.5.4  开发带有两个可选参数的Function过程

1.获取可控制大小写的英文列标

2.计算多样式星期

6.5.5  开发带有不确定参数的Function过程

1.串连内存数组及选区

2.统计多区域公式个数

6.5.6  开发具有三个参数其中第三个为可选的Function过程

1.按单元格背景颜色进行条件平均

2.按颜色从左向向右查找所有数据

6.6  编写函数帮助

1.普通工作簿

2.加载宏工作簿

3.如何让函数说明通用于Excel 20032007

6.7 总结

第七章        VBA的对象模型与对象表示法

7.1 VBA中的对象及结构

7.1.1  关于对象的相关概念

7.1.2  对象与对象集合

7.1.3 对象的层次:父对象与子对象

7.1.4  认识Excel所有对象

7.2  对象的表示法

7.2.1  对象的完整指定方式与简写

7.2.2  利用定义名称获取对象

图形对象的默认名称

2.重定义图形对象的名称

7.2.3  利用集合索引号获取对象

7.2.4  活动对象的简化引用

7.2.5  利用WITH语句简化对象引用

7.2.6 事件中的Me关键字

1.作为过程函数调用

2.提供成员列表

7.3 单元格的各种引用方式

7.3.1 Range("A1")方式引用单元格

1.引用单元格

2.引用区域

3.引用多区域

4.引用整行、整列

5.Range嵌套使用

7.3.2 Cells(1,1)方式引用单元格

1.WorkSheet.Cells(横座标,纵座标)

2.WorkSheet.Cells(行号,列标)

3.Range.Cells(横座标,纵座标)

4.Range.cells(索引号)

7.3.3 [a1]方式引用单元格

7.3.4 Range"A1")、Cells1,1)与[a1]比较

7.3.5 SelectionActiveCell:当前选区与活动单元格

7.3.6 Names:利用名称引用单元格或区域

1.将区域转换成名称

2.在过程中引用名称

7.3.7 UsedRangeCurrentRegion

1.UsedRange

2.CurrentRegion

3.UsedRangeCurrentRegion应用

7.3.8 SpecialCells:按条件引用区域

7.3.9 CurrentArray:引用数组区域

7.3.10 Resize:重置区域大小

7.3.11 Offset:根据偏移量引用区域

7.3.12 Union:单元格的合集

7.3.13 Intersect:单元格、区域的交集

7.3.14 End:引用源区域的区域尾端的单元格

第八章        自动宏与Excel事件

8.1 让宏自动执行

8.1.1 Auto自动宏

8.2.2 工作簿事件中的自动宏

8.2.3  利用鼠标移动事件执行自动宏

8.2 详谈VBA的事件

8.2.1 事件的定义与分类

8.2.2  事件的层次与执行顺序

1.事件的层次

2.不同级别事件的执行顺序

3.同一级别事件的执行顺序

8.2.3 事件的禁用与启用

1. 临时关闭事件

2. 防止事件进入死循环

8.2.4 事件代码的录入方式

8.3 VBA有哪些事件

8.3.1 应用程序级别事件介绍

8.3.2 工作簿事件介绍

8.3.3  工作表事件介绍

8.3.4 事件的特例

1.删除空文本时触发“Worksheet_Change”事件

2.插入批注时不触发任何事件

3.修格单元格格式不触发事件

4.清除格式会触发“Worksheet_Change”事件

5.数据分列时不触发事件

6.表单控件修改数据时不触发任何事件

第九章        VBA程序常规则

9.1 代码编写规则

9.1.1  对代码添加注释

1.添加注释的作途

2.添加注释的方法

3.设置注释在调试代码中的作用

4.对插件添加声明

9.1.2  长代码分行

9.1.3  代码缩进对齐

1.单行代码手动缩进

2.利用工具栏按钮批量缩进

9.1.4  声明有意义的变量名称

9.1.5  IF…end if类配对语句的录入方式

9.1.6  录入事件代码的方式

9.1.7  借用自动列出程序录入代码

9.1.8  善用公共变量

9.1.9  将较大的过程分为多个再调用

9.1.10 减少过程参数

9.1.11 兼容Excel 2007Excel 2003

1.对象、方法与属性与函数的增减

2.工作表行列数差异

3.菜单与功能区模式

9.2  优化代码

9.2.1  强制声明变量

9.2.2  善用常量

9.2.3  关闭屏幕更新

9.2.4  利用WITH减少对象读取次数

9.2.5  利用变量减少对象读取次数

9.2.6  善用带$的字符串处理函数

9.2.7  善用循环中的步长减少循环次数

9.2.8  利用数组代替单元格对象

9.2.9  不重复调用自定义函数时不使用自定义函数

9.2.10 将不改变值或者属性的语句放到循环语句外

9.2.11 利用长度计算判断单元格是否非空

9.2.12 尽量调用内置功能

9.2.13 利用对象循环替代单元格循环

第十章        常用语法剖析

10.1  输入、输出语句

10.1.1  Msgbox函数的功能及作用

1.返回运算结果

2.询问执行方式

3.提示执行步骤

4.告知错误原因

5.展示当前状态

6.设计程序帮助

10.1.2  Msgbox函数的语法

1.Msgbox的参数

2.Msgbox的按钮与图标

3.Msgbox的返回值

10.1.3  Msgbox函数的限制

1.字符数问题

2.控制权问题

3.时间性问题

10.1.4  利用WScript突破Msgbox限制

10.1.5  Debug.print

10.1.6  Inputbox函数的功能与作用

10.1.7  Inputbox函数的语法

1.定制“另存为”对话框

2.根据指定月份批量创建工作表

3.A1日期按指定样式转换为星期

10.1.8  借用Inputbox函数生成月历

10.1.9  Inputbox函数的限制

1.不能检验用户录入字符的数据类型

2.不能让产生单元格引用

3.字符长度限制

10.1.10  利用Application.Inputbox方法替代Inputbox函数

10.1.11  Application.Inputbox语法详解

1.强制用户录入数值

2.对任意选区进行行列合计

3.利用Application.Inputbox录入公式

10.2  条件判断语句

10.2.1  IIF函数的语法与应用

1.IIF的参数

2.And运算符与Or运算符

3.IIF应用案例

10.2.2  IIF函数的限制

10.2.3  IF… Then…语句的语法详解

10.2.4  IF…then…应用案例

1.禁止打印“总表”以外的工作表

2.仅仅允许818点可以打开当前工作簿

3.如果A1是数字,则当前工作簿保存为A1的值

10.2.5  IF…Then…Else…语法与应用

1.语法详解

2.实例:多条件计算奖金

10.2.6  条件语句的嵌套应用

1.语法详解

2.实例:模防复选框控制单元格

10.2.7  Select Case语法详解

1.语法详解

2.实例:多条件时间判断

3.实例:根据成绩返回评语

4.实例:以指定格式的今日日期显示工作簿标题

5.实例:Select Case嵌套应用计算时间

10.2.8  Select CaseIF… Then…Else之比较

10.2.9  借用Choose函数简化条件选择

10.3  循环语句

10.3.1  For Next语句

1.法语详解

2.步长值正负对过程的影响

3.调整步长值提升循环效率

4.循环中执行多行语句

5.根据需求中途退出循环

6.For Next循环的嵌套应用

10.3.2  利用循环获取工作表目录

1. 工作表中建立表名配合链接函数创建目录

2. 数据有效性配合工作簿事件创建目录

10.3.3  For Each Next语法详解

10.3.4  利用循环选择区域中所有负数

10.3.5 利用循环统一所有图片高度及对齐单元格

10.3.6  Do Loop语法详解

10.3.7  在工作表中循环获取所有字体

10.3.8  计算得分累加到1000时的月份

10.3.9  利用循环产生文字动画

10.4  With语句

10.4.1  With语句的用途与语法

1.简化代码

2.提升速度

3.减少变量

4.语法解析

10.4.2  With语句实例

1.批量生成复选框

2.让图形对象设计动画

10.4.3  With语句常见错误分析

1.忘记写“End With

2.End With放错了位置

3.里层With代码调用外层With对象的属性

10.5  错误处理语句

10.5.1 错误类型与原因

1.环境问题

2.开发者“笔误”

3.用户错误使用

10.5.2  Err对象及其属性、方法

10.5.3  认识Error函数

10.5.4  罗列错误代码及含义

10.5.5  VBA的错误时处理机制

1. On Error GoTo line

2. On Error Resume Next

3. On Error GoTo 0

10.5.6 错误处理:错误三次则退出程序

10.5.7 错误处理:多功能选区统计

10.5.8  错误处理的作用域

1.On Error GoTo line

2.On Error Resume Next

3.On Error GoTo 0

10.5.9  GoSub...Return语句

10.5.10 开发错误处理函数

1.判断工作表是否存在

2.判断工作簿是否存在

3.判断批注是否存在

4.判断单元格是否处于可操作状态

第十一章       Excel常见对象的应用技巧

11.1  Application应用案例

11.1.1  选区拼写检查

11.1.2 调用工作表函数

11.1.3  切换鼠标形状

11.1.4 计算表达式

11.1.5 禁止程序运行时弹出警告框

11.1.6 调整计算方式

11.1.7 罗列最近使用过的文件

11.1.8  查找并打开文件

11.1.9 建立文件目录

11.1.10  定制程序标题

11.1.11  打开指定应用程序

11.1.12 新建一个带有7个工作表的工作簿

11.1.13  在指定时间提示行程安排

11.1.14  模拟键盘快捷键

11.1.15  为程指定快捷键

11.1.16  合并区域

11.1.17  获取多区域的交集

11.1.18  中断程序到一定时间后再继续

11.1.19  调用内置对话框

11.1.20  滚动显示Excel状态栏信息

11.1.21  添加自定义序列

11.1.22  添加名称

11.1.23 将自定义数标记为易失性函数。

11.1.24 选定任意工作簿中的任意区域。

11.1.25 设置应用程序的可见性

11.1.26  设置批注的显示方式

11.2  Range对象应用案例

11.2.1  清除单元格格式

11.2.2  复制单元格数据

11.2.3  将区域中的数据合并到一个单元格中

11.2.4  多工作表数据合并且添加边框

11.2.5  让高度与宽度自动适应数据

11.2.6  在区域中精确查找

11.2.7  替换不规则货品名称

11.2.8  将公式添加到批注

11.2.9  填充工作日

11.2.10  对区域添加四周边框

11.2.11  多区域合并

11.2.12  对小于60的成绩加虚框

11.2.13  反向选择单元格

11.2.14  插入图片并调整为选区大小

11.2.15  选择当前表已用区域的奇/偶数行

11.2.16  删除当前表的空行

11.2.17  删除重复值

11.2.18  将选区导出为图片

11.2.19  删除超链接

11.2.20  选择本表所有合并单元格

11.2.21  朗读选区字符

11.2.22  隐藏所有公式结果为错误的单元格

11.2.23  快速添加日期批注且自动缩放

11.2.24  以逗号分为隔符将文本分列

11.2.25  生成二级下拉选单

11.2.26  将产量批量转换成下拉菜单

11.2.27  设计一个简单放大镜

11.3  Names对象应用案例

11.3.1  罗列当前工作簿的所有名称

11.3.2  利用名称引用其它表数据

11.3.3  隐藏当前工作簿包含“A”的所有名称

11.3.4  借用名称将区域数据引用到组合框

11.3.5  设计三级下拉菜单

11.4  Comments 对象应用案例

11.4.1  批量将数据导入批注

11.4.2  在所有批注末尾添加指定日期

11.4.3  为批注设置图片背景

11.4.4  添加个性化批注

11.4.5  批量修改当前表批注的外观

11.4.6  替换所有批注中的“计算机”为“电脑”

11.5  Sheets对象应用案例

11.5.1  添加汇总工作表

11.5.2  批量添加工作表且以本月日期命名

11.5.3  迅速产生样表

11.5.4  将当前表移到其基它工作簿

11.5.5  除“目录”工作表外隐藏其它所有工作表

11.5.6  分别计算工作表数量和图表数量

11.5.7  建立带链接功能工作表目录且通过快捷键返回目录

11.5.8 对当前表已用区域设置背景图片

11.5.9 批量命名工作表

11.5.10 隐藏所有工作表非使用区

11.6  Workbooks对象应用案例

11.6.1 新建工作簿且对其命名为今日期

11.6.2 将当前工作簿另存且加密为123

11.6.3 工作簿拆分

11.6.4 批量打开文件

11.6.5 导入文本文件到当前工作簿

11.6.6 保存并关闭本工作簿以外的工作簿

11.6.7 每30分钟备份工作簿

11.6.8  将当前工作簿备份到D

11.6.9 清除所有打开工作簿的密码

11.6.10 获取工作簿建立时间和最后一次保存时间

11.6.11 记录文件打开次数

11.6.12  切换图形对象隐藏与显示

11.6.13  设计一个查看一次即自动删除的工作簿

11.6.14  禁止插入新工作表

11.6.15  不打开工作簿而提取数据

11.6.16  合并指定文件夹下每个工作簿中三月生产表到一个工作簿

11.6.17  建立指定文件夹下所工作簿目录和工作表目录

11.6.18 断开与其它工作簿的数据链接

11.7  Windows 对象案例

11.7.1  获取窗口列表

11.7.2  确保随时打开工作簿都窗口最大化

11.7.3  切换当前窗口的网格线、滚动条、标题与工作表标签

11.7.4  自由滚动窗口方便阅读工作表数据

11.7.5  以当前单元格为基准拆分窗格

11.7.6  计算活动单元格左边距

11.7.7  计算活动单元格的屏幕位置

11.7.8  三种方式不显示零值

第十二章       Excel的事件应用案例

12.1  应用程序事件案例

12.1.1 新工作簿环境设计

12.1.2 打开任意工作簿时全自动备份

12.2  工作簿事件案例

12.2.1 新建工作表时自动设置页眉

12.2.2 禁止缩小工作簿窗口

12.2.3 未汇总则禁止关闭工作簿

12.2.4  新建工作表时以当前时间命名

12.2.5  关闭工作簿前删除多余工作表

12.2.6  月底以外时间禁止打印总表

12.2.7  调整窗口大小时报告可见区域行列数

12.2.8  禁止切换到其它工作簿

12.3  工作表事件案例

12.3.1 选择单元时在状态栏提示地址

12.3.2 快速录入出勤表

12.3.3 建立只能使用一次的超链接

12.3.4 让A1的日期单击更新

12.3.5  在状态栏显示选区的字母、数字、汉字个数

12.3.6  实时监控单元格每一次的编辑数据与时间

12.3.7  利用数字简化公司名输入

12.3.8  录入数据时自动跳过带公式的单元格

12.3.9  在工作表的标题行禁用左、右键

12.3.10  对选择区域进行背景着色

12.3.11 适用于指定区域的自动更正

12.4  ActiveX控件事件案例

12.4.1  鼠标移过时切换按钮颜色

12.4.2  鼠标移动录入姓名

12.4.3  鼠标移过组合框时加载图片

12.4.4  鼠标移过列表框时输入品名与单价

第十三章       数组基础

13.1  数组基础

13.1.1  数组概念

13.1.2  数据的维数

1.一维数组

2.二维数组

13.1.3  利用索引号获取数组中的元素

13.1.4  声明数组与赋值

1.声明数组变量

2.对数组变量赋值

13.1.5  静态数组与动态数组

13.2  内置数组函数

13.2.1  Array:创建一个数组

13.2.2  Isarray:判断是否是数组

13.2.3  Index:从数组中取值

13.2.4  Transpose:转置数组

13.2.5  LBound / Ubound:获取数组的上下界

1. LBound

2. Ubound

13.2.6  Split/ Join:文本与数组转化

1. Split函数

2. Join

13.2.7  Filter:数组的筛选

第十四章       开发数组函数与数组应用

14.1  自定义数组函数

14.1.1  定义数组函数要点

14.1.2  获取工作表目录

14.1.3  星期序列

14.1.4  获取区域的唯一值

14.2  数组应用案例

14.2.1  将按姓名排列的纵向学员表转置为按班级横向排列

14.2.2  多表学员资料查询

14.2.3  自定义百家姓序列

14.2.4 查询两列共有项

14.2.5 获取文件夹下所有文件详细信息

14.2.6 获取当前表所有批注

第十五章       认识窗体与控件

15.1 UserForm简介

15.1.1 窗体与控件的用途

15.1.2 插入窗体与控件的方法

15.1.3 使用Excel 5.0对话框

15.2 窗体控件一览

15.2.1 标签

15.2.2 文字框

15.2.3 命令按钮

15.2.4 复合框

15.2.5 列表框

15.2.6 复选框

15.2.7 单选框

15.2.8 分组框

15.2.9 切换按钮

15.2.10 多页控件

15.2.11 滚动条

15.2.12 图像

15.2.13 RefEdit

15.2.14 附件控件

15.3 设置控件属性

15.3.1 调窗体控件位置与大小

15.3.2 设置控件的顺序

15.3.3 共同属性与非共同属性

15.3.4 设置颜色属性

15.3.5 设置宽与高属性

15.3.6 设置Pictrue属性

15.3.7 设置光标属性

15.3.8 设置复合框

15.3.9 设置Flash动画

15.4 窗体与控件的事件

15.4.1 窗体事件介绍

   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   

15.4.2 显示窗体时随机加载背景图

15.4.3 初始化窗体时填充列框下拉列表

15.4.4 双击时关闭窗体

15.4.5 窗体永远显示在上左角

15.4.6 按比例缩放窗体及滚动窗体

15.4.7 控件事件介绍

15.4.8 在窗体中建立超链接

15.4.9  鼠标移过更新列表框数据

15.4.10  让输入学号的文字框仅能录入6位数字

15.4.11  鼠标拖动调整文字框大小

15.4.12  为窗体中所有控件设置帮助

第十六章       窗体控件运用案例

16.1  窗体运用

16.1.1  设计登录界面

16.1.2  权限认证窗口

16.1.3  设计计划任务向导

16.1.4  设动动画帮助

16.1.5  用窗体浏览图片

16.2  窗体与表格的交互

16.2.1  设计多表录入面板

16.2.2  多条件高级查询

16.2.3  分类汇总捐赠额并按需求导出

16.2.4  输入长地名时逐一提示

第十七章       表单控件与ActiveX控件

17.1  表单控件

17.1.1  控件的调出方式

17.1.2  表单控件的功能

17.1.3  表单工具的优缺点

17.1.4  案例:批量插入单选框并分组

17.2  ActiveX控件

17.2.1 ActiveX控件功能

17.2.2  利用列表框突破数据有效性的单列限制

17.2.3  在工作表中播放Flash动画

17.2.4  在工作表左上角播放GIF运画

17.2.5  在组合框显示数据源的唯一值

第十八章       文件管理

18.1  认识文件处理内置命令

18.1.1  打开与关闭文件

18.1.2  读取文本文件内容

18.1.3  复制文件

18.1.4  获取文件最后修改时间

18.1.5  计算文件大小

18.1.6  获取文件属性及设置文件属性

18.1.7  删除文件

18.1.8  创建与删除文件夹

18.1.9  对文件重命名

18.1.10 判断文件及目录是否存在

18.2  文件操作案例

18.2.1  批量建立文件夹

18.2.2  获取D根目录中大于1MB的文件列表

18.2.3  E盘根目录中所有隐藏的文件显示出来

18.2.4  备份文件夹中的Excel文件

18.2.5  限制文件的最晚打开时间

18.2.6  删除文件夹中2年没有用的文件

19.2.7  文件批量重命名

第十九章       FSOWScriptDOSVBA中的应用

19.1  认识FSO

19.1.1  FSO的用途与调用方式

19.1.2  FSO的对象

19.1.3  FSO常用对象的方法与属性

19.2  FSO处理文件与目录

19.2.1  获取文件夹相关信息

19.2.2 删除D盘中大小为0的文件夹

19.2.3 获取C盘中所有文件列表

19.3  关于脚本语言WScript

19.3.1 关于脚本语言

19.3.2  WScript的方法与属性

19.3.3  WScript.Shell的使用方法

19.4  脚本语言应用案例

19.4.1  在桌面建立当前工作簿的快捷方式

19.4.2  Excel 20032007添加到右键“发送到”菜单

19.4.3  显示桌面所有文件列表

19.4.4  关闭数字键及打开大写锁定键

19.4.5  提取选择的文件夹中所有文件的信息

19.4.6  打开网上邻居

19.4.7  在收藏夹添加网址

19.5  VBA中调用DOS

19.5.1  VBA中调用DOS命令

19.6  DOSVBA中的应用

19.6.1 获取CDE三个磁盘根目录中的目录列表

19.6.2获取D盘中所有Excel文件

19.6.3获取IP地址与网关设置

第二十章       磁盘与系统信息管理

20.1  获取磁盘信息

20.1.1  CreateObject 配合FSO获取磁盘信息

20.1.2  GetObject配合MWI获取磁盘信息

20.1.3  API

20.2  获取系统信息

20.1.1  罗列当前系统进程

20.1.2  获取硬盘型号与容量

20.1.3  获取分辨率

第二十一章       认识Excel的内置命令栏对象

21.1  关于内置命令栏

21.1.1  Excel对命令栏的处理方式

21.1.2  内置命令栏的分类

21.1.3  手工定义工具栏按钮

21.2  了解CommandBars对象

21.2.1  CommandBar的常用属性

21.2.2  CommandBar的方法

21.2.3  获取CommandBars子对象的名称与类型

21.2.4  获取及保存内置图标

第二十二章       创建新工具栏

22.1  创建与删除工具栏

22.1.1  建立工具按钮基本语法

22.1.2  自定义新工具栏案例:工作表目录

22.2  弹出式工具栏

22.2.1  创建弹出式工具栏语法结构

22.2.2  创建一个弹出式工具栏

22.2.3  创建三级工具栏

22.3  特殊的工具栏

22.3.1  创建可读写的弹出式工具栏

22.3.2  利用工具栏文字框查找数据

第二十三章       创建新菜单栏

23.1  菜单基础

23.1.1  菜单的分类

23.1.2  创建菜单基本语法

13.1.3  设计菜单注意事项

23.2  创建新菜单案例

23.2.1  创建关机与重启两个工作表菜单

23.2.3  由用户定义子菜单容器

23.3  设计感应菜单

23.3.1  在指定工作表才可用的菜单

23.3.2  工指定区域才可用的菜单

23.3.3  选择图表才出现的菜单

第二十四章       操作快捷菜单

24.1  认识快捷菜单

24.1.1  快捷菜单的分类

24.1.2  获取Excel所有快捷菜单

24.1.3  Excel 20032007中快捷菜单的差异

24.2  定制快捷菜单

24.2.1  创建单元格右键子菜单

24.2.2  设计左键快捷菜单

24.2.3  打造最强大的单元格右键菜单

24.2.4  在窗体中显示快捷菜单

第二十五章       认识类和类模块

25.1  类模块基础

25.1.1  类模块应用范围

25.1.2  类模块事件

25.1.3  类模块与变量

25.2  类的应用

25.2.1  程序级事件:在标题处显示工作簿路径

25.2.2  对所有工作表的选区背景着色

25.2.3  为窗体的按钮批量设置设置事件过程

25.2.4  开发一个颜色拾取器

第二十六章       API的基本应用

26.1  API在窗体设计中的应用

26.1.1  按任意地方都可拖动的窗体

26.1.2  设计半圆形动画窗体

26.1.3  资料录入完整鼠标才可能离开窗体的范围限制动

26.1.4  拖动窗体随意修改窗体大小

26.1.5  设计百叶窗式动态窗体

26.1.6  在窗体中展示文字动画

26.2  API的其它应用

26.2.1  发送邮件

26.2.2  仿PotoShop设计彩蛋

26.2.3  ActiveX控件在非设计模式下也能移动

26.2.4  将文件删除并存入回收站

第二十七章       VBA与注册表

27.1  VBA对注册表的控制方式

27.1.1  什么是注册表

27.1.2  VBA操作注册表的方法

1.保存数据到注册表

2.读取注册表设置

3.删除注册表信息

27.1.3  VBA操作注册表的优缺点

27.1.4  借用脚本实现注册表的自由控制

27.2  注册表的应用

27.2.1  记录当前工作簿最后一次打开时间

27.2.2  限制工作簿使用次数

27.2.3  让零值显示设置适用所有工作表

27.2.4  禁止使用U

第二十八章       VBE的对象模型与对象控制

28.1  准备工作

28.1.1  设置Excel选项

28.1.2  引用对象库

28.2  认识VBE的对象模型

28.2.1  VBE对象模型的层次结构

28.2.2  VBE对象介绍

1.VBIDE

2.VBE

3.VBProject

4. VBComponent

5. CodeModule

6.CodePane

28.2.3  如何引用VBE对象

28.2.4  罗列当前工程中所有组件及其类型

28.3  VBE对象的控制

28.3.1  罗列指定模块中所有过程名称

28.3.2  罗列所有模块代码总行数

28.3.3  利用代码添加模块

28.3.4  用代码添加工作簿事件代码

28.3.5  创建ActiveX控件且编写单击事件代码

28.3.6  删除当前工作簿所有代码及窗体、模块组件

28.3.7  判断工作簿是否有宏代码

28.3.8  全自动生成窗体、控件及事件代码

第二十九章 程序开发思想

29.1  开发人员自我定位

29.1.1  区别开发人员与应用人员

29.1.2  开发人员基本条件

29.2  开发插件与普通VBA编程的区别

29.3  如何开发最佳应用程序

29.3.1  罗列应用程序需具备的功能

29.3.2  与终端用户交流

29.3.3  规划程序结构

29.3.4  设定友好的界面

29.3.5  提升程序通用性

29.3.6  注重程序效率

29.3.7  提供防错机制

第三十章       开发VBE插件

30.1 菜单定制基础

30.1.1 认识命令栏对象

30.1.2 创建命令栏基本语法

30.1.3 罗列VBE中所有菜单与子菜单

30.1.4 创菜工具栏以统计模块中过程相关信息

30.2 开发VBA插件工具箱

30.2.1 开发插件的准备工作

30.2.2  罗列插件功能

30.2.3 开发代码编号工具

30.2.4 开发代码美化工具

30.2.5 开发代码导出工具

30.2.6 开发代码清除工具

30.2.7 开发代码减肥工具

30.2.8 编写菜单

30.2.9 发布插件

第三十一章       开发xlamCOM加载项插件

31.1  关于加载宏

31.1.1  加载宏的特点

31.1.2  为什么使用加载宏

31.1.3  加载宏管理器

31.1.4  内置加载宏的加载与使用

31.1.5  安装与卸载自定义加载宏

31.2  关于加载项

31.2.1  加载项的分类

31.2.2  加载项的开发方式

31.2.3  两种加载项的安装方式

1.如何安装自动化加载项

2.如何安装COM加载项

31.3  准备编写XLAM加载宏

31.3.1 认识Excel工作簿的格式

31.3.2 生成加载宏的两种方法

31.4  开发集公农历一体的日期输入器

31.4.1  确认程序需具备的功能

31.4.2  定义公历转农历的函数

31.4.3  设计日期输入器窗体

31.4.4  编写窗体初化代码

31.4.5  实现输入器与工作表交互

31.4.6  设计帮助

31.4.7  定制菜单

31.4.8  测试并发布插件

31.5  利用VB6.0编写COM加载项

31.5.1  COM加载项开发基础

31.5.2  安装VB 6.0企业版

31.5.3  开发COM加载项基本步骤

1.创建外接程序

2.设计“设计器”

3.添加引用

4.编辑设计器代码

5.编写插件代码与菜单

6.添加类模块响引菜单事件

7.发布并安装插件

31.6  开发重复值控制器

31.6.1  确认插件所需功能

31.6.2  建立VB工程

31.6.3  编写菜单代码及响应事件

31.6.4  编写重复值控制主程序

31.6.5  发布加载项并安装调试

第三十二章       开发“Excel百宝箱”

32.1  程序规划

32.1.1 了解终端用户需求

32.1.2 确认插件功能表

32.1.3 规划插件结构

32.2 财务工具箱

32.2.1 制作工资条头

32.2.2 根据工资计算所需钞票张数

32.2.3 小写金额转大写

32.2.4  工作簿与工作表合并

32.3.5 工作表拆分

32.3.6 工作簿拆分

32.3.7 复选框工具

32.3.8 文本与数据转换

32.3 合并工具箱

32.3.1 合并数据且居中及其还原

32.3.2 合并数据并复制

32.3.3 取消区域合并填充原合并值

32.3.4 可还原的合并居中

32.3.5 合并列中相同数据及还原

32.4 批注工具箱

32.4.1 批注管理器

32.4.2 添加个性化批注

32.4.3 建立图片批注

32.4.4 批量添加右列内容为批注

32.4.5 批量导入同名照片到批注

32.5 图片工具箱

32.5.1 将选区转换成图片

32.5.2 批量导入图片

32.5.3 批量导出图片到硬盘

32.6 安全具箱

32.7 打印工具箱

32.8 图表工具箱

32.9 唯一值工具箱

32.10 文件工具箱

32.11 系统工具箱

32.12 选择工具箱

32.13 程序员工具箱

32.14 其它工具箱

32.15 开发函数

32.15.1 开发函数

1.不同项

2.共有项

3.取工作表名

4.提取公式

5.计算公式长度

6.分隔取数

7.合并数据

8.将表达式转为值

9.排名

10.排序

11.取数

12.取唯一值

13.消除空值

14.颜色计数

15.颜色求和

16.去首尾求平均

17.42位超长数据求和

18.按颜色条件求和

19.对区域中混合字符串的所有数字求和

20.批量命名工作表

32.15.2 设计函数帮助

32.16 定制百宝箱帮助

32.16.1 定制百宝箱帮助

32.16.2 信息反馈

32.17 定制多级菜单并发布

32.17.1 定制菜单

32.17.2 发布

32.17.3 小结