Excel_VBA_编程教程(2010 新春版)
2010 新春版
http://www.1000tiao.com
2010.2.18
Excel_VBA_编程教程(2010 新春版)
目录
一、VBA 语言基础...................................................................................................................1
第一节标识符....................................................................................................................................1
第二节运算符....................................................................................................................................1
第三节数据类型................................................................................................................................1
第四节变量与常量............................................................................................................................1
第五节数组........................................................................................................................................2
第六节注释和赋值语句....................................................................................................................2
第七节书写规范................................................................................................................................2
第八节判断语句................................................................................................................................2
第九节循环语句................................................................................................................................3
第十节其他类语句和错误语句处理................................................................................................4
第十一节过程和函数........................................................................................................................4
一.Sub 过程.................................................................4
二.Function 函数............................................................5
三.Property 属性过程和 Event 事件过程.........................................5
第十二节内部函数.............................................................................................................................5
一.测试函数................................................................5
二.数学函数................................................................5
三.字符串函数..............................................................5
四.转换函数................................................................6
五.时间函数................................................................6
第十三节文件操作............................................................................................................................6
文件........................................................................6
删除........................................................................6
打开........................................................................6
读入........................................................................7
写入........................................................................7
关闭........................................................................7
其他文件函数................................................................7
二、VISUALBASIC 程序设计网络教学.....................................................................................1
第一课 VBA 是什么.................................................................................................................1
1.1VBA 是什么....................................................................................................................................1
1.2EXCEL 环境中基于应用程序自动化的优点................................................................................1
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
1.3 录制简单的宏..............................................................................................................................1
1.4 执行宏..........................................................................................................................................2
1.5 查看录制的代码..........................................................................................................................2
1.6 编辑录制的代码..........................................................................................................................3
1.7 录制宏的局限性..........................................................................................................................
31.8 小结..............................................................................................................................................3
第二课处理录制的宏............................................................................................................3
2.1 为宏指定快捷键..........................................................................................................................3
2.2 决定宏保存的位置......................................................................................................................4
2.3 个人宏工作簿..............................................................................................................................4
2.3.1 保存宏到个人宏工作簿..................................................4
2.3.2 使用并编辑个人宏工作簿中的宏..........................................4
2.4 将宏指定给按钮..........................................................................................................................4
2.5 将宏指定给图片或其他对象......................................................................................................5
2.6 小结..............................................................................................................................................5
第三课学习控件...................................................................................................................5
-----------------------页面 2-----------------------
3.1EXCEL 开发过程简介....................................................................................................................5
3.2 认识不同的控件..........................................................................................................................5
3.3 向工作表添加控件......................................................................................................................6
3.4 设置控件的特性..........................................................................................................................6
3.5 给控件命名..................................................................................................................................6
3.6 使用用户窗体..............................................................................................................................6
3.7 疑难解答......................................................................................................................................7
第四课理解变量和变量的作用..............................................................................................7
4.1 代码存在的位置:模块..............................................................................................................7
4.2 对模块的概览..............................................................................................................................7
4.2.1 创建过程..............................................................8
4.2.2 运行宏................................................................9
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
4.3 保存对模块所做的改变..............................................................................................................9
4.4 变量..............................................................................................................................................9
4.4.1 变量的数据类型........................................................9
4.4.2 用 Dim 语句创建变量(声明变量)..........................................10
4.4.3 变量命名的惯例.......................................................10
4.4.4 使用数组.............................................................10
4.4.5 变量赋值.............................................................11
第五课利用 VBA 设置工作表使用权限...................................................................................11
1.使用 WITH 语句。..........................................................................................
2.使用对象变量。.........................................................................................
方法 3:减少对象的激活和选择....................................................................
方法 4:关闭屏幕更新....................................................................................
第六课提高 EXCEL 中 VBA 的效率............................................................................................12
方法 1:尽量使用 VBA 原有的属性、方法和 WORKSHEET 函数............................................................12
方法 2:尽量减少使用对象引用,尤其在循环中.........................................................................12
1.使用 With 语句。..........................................................12
2.使用对象变量。..........................................................12
3.在循环中要尽量减少对象的访问。..........................................13
方法 3:减少对象的激活和选择....................................................................................................13
方法 4:关闭屏幕更新....................................................................................................................13
第七课如何在 EXCEL 里使用定时器.......................................................................................13
三、学习微软 EXCEL2002VBA 编程和 XML,ASP 技术...........................................................15
第一章电子表格自动化简介和了解宏命令...........................................................................15
1 了解宏............................................................................................................................................15
2 宏命令的普通应用........................................................................................................................15
3 写宏之前的计划............................................................................................................................16
4 录制宏............................................................................................................................................17
5 运行宏............................................................................................................................................18
6 修改宏代码....................................................................................................................................19
7 添加注释........................................................................................................................................21
8 分析宏代码....................................................................................................................................22
9 清除宏代码....................................................................................................................................23
10 测试修改好的宏..........................................................................................................................24
11 两个层面运行宏的方法..............................................................................................................24
12 完善你的宏代码..........................................................................................................................25
13 重新命名宏..................................................................................................................................27
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
14 运行宏的其它方法......................................................................................................................27
-----------------------页面 3-----------------------
15 使用键盘快捷键运行宏..............................................................................................................27
16 通过菜单运行宏..........................................................................................................................28
17 通过工具栏按钮运行宏..............................................................................................................30
18 通过工作表里面的按钮运行宏..................................................................................................31
19 保存宏..........................................................................................................................................32
20 打印宏..........................................................................................................................................32
21 保存宏在个人宏工作簿..............................................................................................................32
22 打开含有宏的工作簿..................................................................................................................34
23VB 编辑窗口...................................................................................................................................35
24 了解工程浏览窗口......................................................................................................................35
25 了解属性窗口..............................................................................................................................36
26 了解代码窗口..............................................................................................................................36
27VB 编辑器里的其它窗口..............................................................................................................38
28 接下来……..................................................................................................................................39
第二章 VBA 第一步..............................................................................................................39
1 了解指令,模块和过程................................................................................................................39
2VBA 工程命名..................................................................................................................................39
3 模块重命名....................................................................................................................................40
4 从其它工程调用过程....................................................................................................................41
5 了解对象,属性和方法................................................................................................................42
6 学习对象,属性和方法................................................................................................................43
7 句法和文法....................................................................................................................................45
8 打断很长的 VBA 语句......................................................................................................................47
9 了解 VBA 错误..................................................................................................................................47
10 查找帮助......................................................................................................................................49
11 语法和编程快捷助手..................................................................................................................50
12 属性/方法列表............................................................................................................................51
13 常数列表......................................................................................................................................51
14 参数信息......................................................................................................................................52
15 快速信息......................................................................................................................................52
16 自动完成关键字..........................................................................................................................52
17 缩进/凸出....................................................................................................................................53
18 设置注释块/解除注释块............................................................................................................53
19 使用对象浏览器..........................................................................................................................53
20 使用 VBA 对象库............................................................................................................................58
21 用对象浏览器来定位过程..........................................................................................................59
22 使用立即窗口..............................................................................................................................59
23 获取立即窗口里的信息..............................................................................................................61
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
24 学习对象......................................................................................................................................62
25 电子表格单元格操作..................................................................................................................62
26 使用 RANGE 属性..............................................................................................................................62
27 使用 CELLS 属性..............................................................................................................................62
28 使用 OFFSET 属性............................................................................................................................63
29 选择单元格的其它方法..............................................................................................................64
30 选择行和列..................................................................................................................................64
31 获取工作表信息..........................................................................................................................65
32 往工作表输入数据......................................................................................................................65
33 返回工作表中的信息..................................................................................................................65
34 单元格格式..................................................................................................................................66
35 移动,复制和删除单元格..........................................................................................................66
36 操作工作簿和工作表..................................................................................................................67
37 操作窗口(WINDOWS)...................................................................................................................67
38 管理 EXCEL 应用程序......................................................................................................................68
-----------------------页面 4-----------------------
39 接下来……..................................................................................................................................68
第三章了解变量,数据类型和常量.....................................................................................69
1 保存 VBA 语句的结果......................................................................................................................69
2 变量是什么....................................................................................................................................69
3 数据类型........................................................................................................................................69
4 如何产生变量................................................................................................................................70
5 如何声明变量................................................................................................................................71
6 明确变量的数据类型....................................................................................................................72
7 变量赋值........................................................................................................................................73
8 强制声明变量................................................................................................................................75
9 了解变量范围................................................................................................................................76
10 过程级别(当地)变量..............................................................................................................76
11 模块级别变量..............................................................................................................................77
12 工程级别变量..............................................................................................................................77
13 变量的存活期..............................................................................................................................78
14 了解和使用静态变量..................................................................................................................78
15 声明和使用对象变量..................................................................................................................79
16 使用明确的对象变量..................................................................................................................80
17 查找变量定义..............................................................................................................................80
18 在 VB 过程里面使用常量..............................................................................................................80
19 内置常量......................................................................................................................................81
20 接下来……..................................................................................................................................82
第四章 VBA 过程:子程序和函数..........................................................................................82
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
1.关于函数过程...............................................................................................................................82
2.创建函数过程...............................................................................................................................82
3.执行函数过程...............................................................................................................................84
4.从工作表里运行函数过程...........................................................................................................84
5.从另外一个 VBA 过程里运行函数过程.........................................................................................85
6.传递参数.......................................................................................................................................86
7.明确参数类型...............................................................................................................................87
8.按地址和按值传递参数...............................................................................................................88
9.使用可选的参数...........................................................................................................................88
10.定位内置函数.............................................................................................................................89
11.使用 MSGBOX 函数...........................................................................................................................90
12.MSGBOX 函数的运行值...................................................................................................................94
13.使用 INPUTBOX 函数........................................................................................................................95
14.数据类型转变.............................................................................................................................96
15.使用 INPUTBOX 方法........................................................................................................................97
16.使用主过程和子过程...............................................................................................................100
17.接下来……...............................................................................................................................102
第五章基于 VBA 做决定......................................................................................................102
1.关系和逻辑运算符.....................................................................................................................102
2.IF…THEN 语句...............................................................................................................................103
3.基于多于一个条件的决定.........................................................................................................105
4.THEIF…THEN…ELSE 语句.............................................................................................................106
5.IF…THEN…ELSEIF 语句................................................................................................................108
6.嵌套的 IF…THEN 语句...................................................................................................................110
7.SELECTCASE 语句...........................................................................................................................110
8.和 CASE 子句一起使用 IS...............................................................................................................112
9.确定 CASE 子句里数值的范围......................................................................................................113
10.在 CASE 子句里确定多个表达式.................................................................................................114
-----------------------页面 5-----------------------
11.接下来…...................................................................................................................................114
第六章在 VBA 中重复操作...................................................................................................114
1.DOLOOPS:DO…WHILE 和 DO…UNTIL................................................................................................114
2.观察过程执行.............................................................................................................................117
3.WHILE…WEND 循环..........................................................................................................................118
4.FOR…NEXT 循环...........................................................................................................................119
5.FOREACH…NEXT 循环.....................................................................................................................120
7.提前跳出循环.............................................................................................................................121
http://www.1000tiao.com
Excel_VBA_编程教程(2010 新春版)
8.循环嵌套.....................................................................................................................................122
9.接下来….....................................................................................................................................122
第七章利用 VBA 数组管理数据清单和表格..........................................................................122
1.了解数组.....................................................................................................................................123
2.声明数组.....................................................................................................................................124
3.数组的上界和下界.....................................................................................................................124
4.在 VBA 过程里使用数组...............................................................................................................124
5.数组和循环语句.........................................................................................................................125
6.使用二维数组.............................................................................................................................127
7.静态和动态数组.........................................................................................................................128
8.数组函数.....................................................................................................................................129
9.ARRAY 函数.....................................................................................................................................130
10.ISARRAY 函数...............................................................................................................................130
11.ERASE 函数...................................................................................................................................131
12.LBOUND 函数和 UBOUND 函数..........................................................................................................131
13.数组中的错误...........................................................................................................................132
14.数组作为参数...........................................................................................................................134
15.接下来…...................................................................................................................................134
第八章利用 VBA 操纵文件和文件夹.....................................................................................134
1.获取当前文件夹的名称(CURDIR 函数)...................................................................................135
2.更改文件或文件夹名称(NAME 函数).......................................................................................135
3.检查文件或文件夹是否存在(DIR 函数)................................................................................136
4.获得文件修改的日期和时间(FILEDATETIME 函数).................................................................137
5.获得文件大小(FILELEN 函数).................................................................................................138
6.返回和设置文件属性(GETATTR 函数和 SETATTR 函数).............................................................138
7.更改缺省文件夹或驱动器(CHDIR 语句和 CHDRIVE 语句).........................................................139
8.创建和删除文件夹(MKDIR 语句和 RMDIR 语句)........................................................................140
9.复制文件(FILECOPY 语句)........................................................................................................140
10.删除文件(KILL 语句)............................................................................................................142
11.从文件读取和写入数据(INPUT/OUTPUT)...............................................................................142
12.文件访问类型...........................................................................................................................142
13.使用顺序文件...........................................................................................................................143
14.读取储存于顺序文件里的数据...............................................................................................143
15.逐行读取文件...........................................................................................................................143
16.从顺序文件中读取字符...........................................................................................................144
17.读取分隔文本文件...................................................................................................................145
18.往顺序文件里写数据...............................................................................................................146
19.使用 WRITE#和 PRINT#语句....................................................................................................147
20.操作随机文件...........................................................................................................................148
21.创建用户定义的数据类型.......................................................................................................148
http://www.1000tiao.com