第1篇Excel VBA准备篇 18
第1章VBA概述 18
1.1什么是VBA 18
1.1.1 VBA的产生及发展历史 18
1.1.2 VBA的应用 18
1.2第1个VBA程序 18
1.2.1创建一个“Hello World”!控制台程序 18
1.2.2执行及查看结果 19
1.2.3使用VBA调试器 19
1.3 VBA的功能及用途 20
1.3.1 VBA的功能 20
1.3.2 VBA的用途及常用开发工具 20
1.4习题 20
第2章Excel 2007概述 21
2.1了解Exce12007 21
2.1.1 Excel的发展过程 21
2.1.2 Excel 2007的新特点 22
2.2 Excel 2007的操作 22
2.2.1启动Excel 2007 22
2.2.2认识Exce12007的工作界面 24
2.2.3操作Exce12007工作簿 25
2.2.4操作Excel 2007工作表 25
2.2.5操作单元格 25
2.2.6获取Excel 2007的帮助信息 26
2.2.7退出Exce12007 27
2.3习题 27
第3章Excel 2007中的宏与VBA 28
3.1认识宏 28
3.1.1了解宏的安全性 28
3.1.2理解宏的功能 29
3.2在Exce12007中宏的操作 29
3.2.1录制宏 29
3.2.2保存宏 31
3.2.3执行宏 31
3.2.4编辑宏 32
3.2.5删除宏 32
3.3了解Excel VBA 33
3.3.1认识VBA 33
3.3.2了解VBA的特点 33
3.3.3理解VBA与VB的关系 34
3.3.4理解Exce12007与VBA的关系 34
3.4第1个Excel VBA程序 34
3.4.1理解程序结构 35
3.4.2理解程序执行过程 35
3.5运行VBA程序 35
3.5.1通过菜单运行程序 36
3.5.2通过工具栏运行程序 36
3.6调试VBA程序 37
3.6.1查看程序结果 37
3.6.2查看变量值 37
3.7习题 37
第2篇Excel VBA基础篇 38
第4章Visual Basic编辑器简介 38
4.1 Visual Basic编辑器概述 38
4.1.1 Visual Basic编辑器的发展过程 38
4.1.2 Visual Basic编辑器的特点 38
4.2构建VBA工作环境 39
4.2.1安装VBA开发环境 39
4.2.2安装VBA帮助文档 40
4.3操作Visual Basic编辑器 40
4.3.1启动Visual Basic编辑器 41
4.3.2认识Visual Basic编辑器窗口 41
4.3.3退出Visual Basic编辑器 41
4.4使用Visual Basic编辑器中的窗口 42
4.4.1使用代码窗口 42
4.4.2使用对象浏览器 43
4.4.3使用立即窗口 44
4.4.4使用本地窗口 45
4.4.5使用监视窗口 47
4.4.6属性窗口 48
4.4.7使用工程资源管理器 48
4.5调试VBA程序 49
4.5.1使用调试工具栏 50
4.5.2设置断点 50
4.5.3使用stop语句 51
4.5.4运行代码中的指定部分 51
4.6自定义Visual Basic编辑器开发环境 51
4.6.1设置“编辑器”的基本功能 51
4.6.2设置编辑器格式 52
4.6.3设置“通用”项 53
4.6.4设置“可连接的”选项 52
4.7习题 53
第5章 设计VBA算法 54
5.1算法概述 54
5.1.1简单算法举例 54
5.1.2算法的特点 56
5.2算法的描述方法 57
5.2.1使用自然语言描述法 57
5.2.2使用流程图描述法 57
5.2.3使用N-S图描述法 59
5.2.4使用伪代码描述法 61
5.2.5使用计算机语言描述法 62
5.3 VBA常用算法 64
5.3.1选择排序法 64
5.3.2自左至右字符串定位算法 64
5.3.3顺序查找算法 65
5.4习题 65
第6章 数据类型与运算符 66
6.1 VBA的数据类型 66
6.1.1理解数据 66
6.1.2 VBA数据类型 66
6.2使用常量与变量 67
6.2.1使用常量 67
6.2.2使用变量 67
6.2.3强制声明变量 68
6.2.4使用类型标识符定义变量 68
6.2.5定义公共变量 69
6.2.6使用模块级变量 69
6.3理解VBA常用数据类型 69
6.3.1使用Boolean型数据 69
6.3.2使用Byte型数据 69
6.3.3使用Date型数据 70
6.3.4使用Double型数据 70
6.3.5使用Integer型数据 70
6.3.6使用Long型数据 70
6.3.7使用Object型数据 70
6.3.8使用String型数据 71
6.3.9使用Variant型数据 71
6.3.10使用自定义数据类型 71
6.4使用运算符 73
6.4.1使用赋值运算符 73
6.4.2使用算术运算符 73
6.4.3使用关系运算符 75
6.4.4使用连接运算符 76
6.4.5使用逻辑运算符 77
6.5使用表达式 78
6.5.1算术表达式 78
6.5.2使用关系表达式 79
6.5.3使用逻辑表达式 79
6.5.4使用其他表达式 79
6.6习题 79
第7章VBA程序控制结构 80
7.1 VBA顺序结构语句 80
7.1.1使用声明语句 80
7.1.2使用可执行语句 81
7.1.3使用续行符 81
7.1.4使用赋值语句 82
7.1.5使用注释语句 83
7.1.6使用暂停语句 84
7.1.7使用条件编译语句 84
7.1.8使用MsgBox函数 85
7.1.9使用InputBox函数 86
7.1.10程序举例 88
7.2 VBA选择结构语句 90
7.2.1使用if…then…语句 90
7.2.2使用嵌套的if语句 91
7.2.3使用Select Case语句 92
7.2.4程序举例 94
7.3 VBA循环结构语句 97
7.3.1使用For…Next语句 97
7.3.2使用Do…Loop语句 99
7.3.3使用While…Wend语句 100
7.3.4使用For Each…Next语句 101
7.3.5使用嵌套的循环 102
7.4习题 103
第8章 数组 104
8.1使用静态数组 104
8.1.1定义静态数组 104
8.1.2初始化静态数组 105
8.1.3获取数组的上下界 106
8.1.4使用二维静态数组 106
8.2使用动态数组 107
8.2.1声明动态数组 107
8.2.2定义数组大小 108
8.2.3复制数组 108
8.2.4重置数组 109
8.2.5避免数组错误 109
8.3程序举例 110
8.3.1求素数 110
8.3.2选择排序法 111
8.4习题 112
第9章 过程与函数 113
9.1理解过程与函数 113
9.1.1过程与函数概述 113
9.1.2过程与函数的分类 114
9.2使用Sub过程 114
9.2.1定义Sub过程 114
9.2.2调用Sub过程 116
9.2.3程序举例 117
9.3使用Function函数 118
9.3.1定义Function函数 118
9.3.2调用Function函数 119
9.3.3程序举例 120
9.4使用参数传递 126
9.4.1理解形式参数与实际参数 126
9.4.2使用传值参数 127
9.4.3使用传地址参数 128
9.4.4使用可选参数传递 128
9.4.5使用数组传递参数 129
9.5习题 130
第3篇Excel VBA对象模型篇 131
第10章Excel对象模型 131
10.1认识对象 131
10.1.1理解对象的属性 131
10.1.2理解对象的行为 131
10.2面向对象程序设计 132
10.2.1继承性 132
10.2.2封装性 132
10.2.3多态性 132
10.3理解Excel2007对象模型 133
10.3.1认识Excel2007对象模型 133
10.3.2定义Excel对象变量 133
10.3.3赋值Excel对象变量 133
10.3.4设置对象的属性 134
10.3.5使用对象的方法 134
10.3.6使用With语句 134
10.4使用集合对象 135
10.4.1使用Excel集合对象 135
10.4.2使用自定义集合对象 137
10.5习题 139
第11章Excel对象——Application对象 140
11.1认识Application对象 140
11.1.1 Application对象常用属性 140
11.1.2调用Application对象的方法 144
11.2使用Application对象的事件 145
11.2.1使用NewWorkbook事件 145
11.2.2使用SheetActivate事件 146
11.2.3使用SheetChange事件 147
11.2.4使用WorkbookBeforeClose事件 148
11.2.5使用WorkbookBeforePrint事件 149
11.3操作Application对象 150
11.3.1从外部程序中启动Exce12007应用程序 150
11.3.2修改Excel文档的标题名 150
11.3.3设置状态栏 151
11.3.4定时运行程序 151
11.3.5退出Excel 2007应用程序 152
11.4习题 152
第12章Excel常用对象——工作簿Workbook对象 153
12.1认识工作簿Workbook对象 153
12.1.1使用Workbook对象常用属性 153
12.1.2使用Workbook对象常用方法 155
12.2使用工作簿Workbook对象的事件 155
12.2.1使用BeforeClose事件 155
12.2.2使用BeforeSave事件 156
12.2.3使用WindowActivate事件 157
12.3操作工作簿Workbook对象 157
12.3.1访问工作簿 157
12.3.2获取工作簿的信息 158
12.3.3新建工作簿 158
12.3.4使用对话框打开工作簿 159
12.3.5备份工作簿 160
12.3.6使用保存对话框保存工作簿 160
12.3.7设置工作簿窗口大小 161
12.3.8冻结窗格 162
12.3.9更改工作簿名称 163
12.3.10关闭工作簿 163
12.4习题 163
第13章Excel对象——工作表Worksheet对象 164
13.1认识Worksheet对象 164
13.1.1使用Worksheet对象常用属性 164
13.1.2使用Worksheet对象的方法 166
13.2使用工作表Worksheet对象的事件 167
13.3操作工作表Worksheet对象 167
13.3.1访问工作表 168
13.3.2判断工作表是否存在 169
13.3.3新建工作表 170
13.3.4重命名工作表 172
13.3.5复制工作表 173
13.3.6移动工作表 174
13.3.7删除工作表 175
13.3.8工作表数据更改时重计算表格 176
13.4习题 176
第14章Excel对象——Range对象 177
14.1认识Range对象 177
14.1.1使用Range对象的常用属性 177
14.1.2使用Range对象的方法 182
14.2操作Range对象 183
14.2.1引用某个单元格 183
14.2.2引用连续单元格区域 184
14.2.3引用单行单列 185
14.2.4引用连续的整行整列 186
14.2.5引用不连续的整行整列区域 186
14.2.6使用多个非连续的单元格区域 187
14.2.7使用多个单元格区域的交叉区域 188
14.2.8使用隐藏的行和列 189
14.2.9转换列标为字母 190
14.2.10设置单元格的边框 191
14.2.11设置单元格的背景 192
14.2.12设置单元格对齐方式 193
14.2.13命名单元格区域 195
14.2.14设置单元格的行高列宽 196
14.2.15 合并单元格 197
14.2.16插入单元格 198
14.2.17插入整行整列 199
14.2.18删除单元格 200
14.2.19删除工作表中的空白行空白列 200
14.3习题 201
第15章Excel对象——Chart对象 202
15.1认识图表 202
15.1.1使用Chart对象的常用属性 203
15.1.2使用Chart对象的方法 204
15.2使用Chart对象的事件 205
15.3操作图表 206
15.3.1创建图表工作表 206
15.3.2创建嵌入式图表 207
15.3.3激活图表 208
15.3.4设置图表格式 209
15.3.5输出图表到剪贴板 210
15.3.6输出图表到文件 210
15.4习题 210
第4篇Excel VBA用户界面设计篇 211
第16章 窗体操作 211
16.1初识界面设计 211
16.1.1理解界面设计的工作原理 211
16.1.2理解Excel VBA的界面类型 211
16.2认识窗体 212
16.2.1使用窗体属性 212
16.2.2使用窗体的方法 212
16.2.3使用窗体事件 213
16.3操作窗体 213
16.3.1添加窗体 213
16.3.2删除窗体 214
16.3.3导入窗体 215
16.3.4导出窗体 215
16.3.5加载窗体 215
16.3.6卸载窗体 215
16.3.7显示窗体 215
16.3.8隐藏窗体 216
16.3.9添加窗体背景 216
16.3.10区别模式窗体与非模式窗体 218
16.3.11禁止使用窗体关闭按钮退出窗体 218
16.4习题 219
第17章 窗体界面设计 220
17.1认识控件 220
17.1.1认识工具箱中的常用控件 220
17.1.2添加工具箱中的控件 220
17.1.3删除工具箱中的控件 221
17.1.4自定义控件提示信息 221
17.2设计窗体界面 221
17.2.1添加窗体控件 222
17.2.2对齐控件 222
17.2.3设置控件的统一尺寸 223
17.2.4引用窗体上的控件 223
17.3设计工作表界面 223
17.3.1添加控件 223
17.3.2编辑工作表中的表单控件 224
17.3.3编辑ActiveX控件 225
17.4习题 226
第5篇Excel VBA高级应用篇 227
第18章 自定义Excel 2007的用户界面 227
18.1 Excel 2007新界面介绍 227
18.1.1功能区用户界面 227
18.1.2 Office按钮 227
18.1.3向快速访问工具栏添加命令 227
18.1.4 Excel 2007新界面与Ribbon 228
18.2自定义菜单 228
18.2.1使用VBA代码访问Excel菜单 228
18.2.2创建自定义菜单 229
18.2.3创建快捷菜单 229
18.3自定义功能区 229
18.3.1使用记事本定制功能区选项卡 230
18.3.2使用Microsoft Office 2007 Custom UI Editor修改UI 230
18.4习题 231
第19章 工作表控件 232
19.1表单控件 232
19.1.1按钮控件 232
19.1.2列表框和组合框 233
19.1.3复选框与单选按钮 236
19.2 ActiveX控件 238
19.2.1标签、按钮、文本框 239
19.2.2单选按钮和复选框 240
19.3习题 241
第20章VBA与Windows API 242
20.1 Windows API基础 242
20.1.1 Windows API概述 242
20.1.2 API分类 242
20.2在Excel中使用API 243
20.2.1声明函数 243
20.2.2调用API函数 243
20.3制作特殊窗体 244
20.3.1制作半透明窗体 244
20.3.2制作椭圆窗体 245
20.4获取系统信息 246
20.4.1获取内存状态 246
20.4.2获取键盘信息 246
20.5习题 247
第21章XML与VBA 248
21.1在Excel中使用XML 248
21.1.1 XML简介 248
21.1.2 XML模式文件 248
21.1.3加载XML文件 249
21.1.4加载XML模式文件 249
21.1.5使用VBA操作XML文件 249
21.2 DOM对象编程 250
21.2.1创建和加载XML文档 251
21.2.2遍历XML文档 251
21.2.3添加XML文档元素 251
21.2.4删除XML文档元素 252
21.2.5修改XML文档元素 252
21.3习题 252
第22章VBA中DLL动态链接库应用设计 253
22.1使用DLL封装Excel VBA 253
22.1.1建立ActiveX DLL工程 253
22.1.2在工程中引用Excel 253
22.1.3编写代码 253
22.1.4工程属性设置 254
22.1.5编译生成DLL文件 254
22.2 Excel VBA工程中引用DLL 254
22.2.1引用并注册DLL文件 254
22.2.2调用DLL中的函数 255
22.2.3执行、测试程序 255
22.3习题 256
第23章 加载宏 257
23.1标准加载宏 257
23.1.1创建标准加载宏 257
23.1.2安装标准加载宏 258
23.2标准加载宏示例 258
23.2.1加载宏的功能 258
23.2.2自定义标准加载宏 259
23.2.3安装自定义加载宏 259
23.2.4使用标准加载宏 259
23.3习题 260
第24章 数据库编程 261
24.1使用MS-Query管理外部数据 261
24.1.1了解MS-Query 261
24.1.2实例介绍 261
24.1.3连接数据源 263
24.1.4创建数据查询 263
24.2 ADO概述 264
24.2.1引用ADO对象库 264
24.2.2 ADO对象模型简介 264
24.2.3 SQL简介 265
24.3 Connection对象 265
24.3.1 Connection对象的常用属性 265
24.3.2 Connection对象的常用方法 266
24.4 Command对象 266
24.4.1 Command对象的常用属性 266
24.4.2 Command对象的常用方法 267
24.5 Recordset对象 267
24.6习题 268
第6篇Excel VBA综合实例篇 269
第25章 人事管理系统 269
25.1需求分析 269
25.1.1问题描述 269
25.1.2分析当前系统 269
25.2功能分析 269
25.2.1添加员工信息 270
25.2.2删除员工信息 270
25.2.3修改员工信息 270
25.2.4查询员工信息 270
25.2.5统计性别信息 270
25.2.6统计工龄信息 270
25.3表格设计 271
25.3.1设计员工信息表 271
25.3.2设计性别统计表和工龄统计表 271
25.4设计窗体及代码 271
25.4.1准备工作 271
25.4.2设计添加员工信息窗体 272
25.4.3设计删除员工信息窗体 277
25.4.4设计修改员工信息窗体 279
25.4.5设计查询员工信息窗体 285
25.4.6设计人事管理系统主界面 287
第26章Operate System考试系统 293
26.1需求分析 293
26.1.1问题描述 293
26.1.2分析当前系统 293
26.2功能设计 293
26.2.1解答填空题 293
26.2.2解答判断题 294
26.2.3解答单项选择题 294
26.2.4解答多项选择题 294
26.3设计卷面 294
26.3.1准备工作 294
26.3.2设计填空题卷面 294
26.3.3设计判断题卷面 297
26.3.4设计单项选择题卷面 299
26.3.5设计多项选择题卷面 302
26.3.6设计标准答案工作表和答题纸工作表格式 304
26.4设计窗体及代码 304
26.4.1准备工作 304
26.4.2设计考试说明界面和分值说明界面 305
26.4.3设计Operate System考试系统主界面 306