收藏 分享(赏)

Excel VBA 基础教程.pdf

上传人:精品资料 文档编号:11194766 上传时间:2020-02-15 格式:PDF 页数:332 大小:3.39MB
下载 相关 举报
Excel VBA 基础教程.pdf_第1页
第1页 / 共332页
Excel VBA 基础教程.pdf_第2页
第2页 / 共332页
Excel VBA 基础教程.pdf_第3页
第3页 / 共332页
Excel VBA 基础教程.pdf_第4页
第4页 / 共332页
Excel VBA 基础教程.pdf_第5页
第5页 / 共332页
点击查看更多>>
资源描述

1、目 录 一、VBA语言基础 .1 第一节 标识符 1 第二节 运算符 1 第三节 数据类型 1 第四节 变量与常量 1 第五节 数组 2 第六节 注释和赋值语句 2 第七节 书写规范 2 第八节 判断语句 2 第九节 循环语句 3 第十节 其他类语句和错误语句处理 4 第十一节 过程和函数 4 一Sub过程 . 4 二Function函数. . 5 三Property属性过程和Ev ent事件过程. 5 第十二节内部函数 .5 一测试函数. . 5 二数学函数. . 5 三字符串函数 5 四转换函数. . 6 五时间函数. . 6 第十三节 文件操作 6 文件. . 6 删除. . 6 打开.

2、 . 6 读入. . 7 写入. . 7 关闭. . 7 其他文件函数. . 7 二、VISUAL BASIC程序设计网络教学 .1 第一课 VBA是什么 .1 1.1 VBA是什么 1 1.2 EXCEL环境中基于应用程序自动化的优点 1 1.3 录制简单的宏 1 1.4 执行宏 2 1.5 查看录制的代码 2 1.6 编辑录制的代码 3 1.7 录制宏的局限性 3 1.8 小结 3 第二课 处理录制的宏 3 2.1 为宏指定快捷键 3 2.2 决定宏保存的位置 4 2.3 个人宏工作簿 4 2.3.1 保 存宏到个人宏工作簿. . 4 2.3.2 使 用并编辑个人宏工作簿中的宏 4 2.4

3、 将宏指定给按钮 4 2.5 将宏指定给图片或其他对象 5 2.6 小结 5 第三课 学习控件 .5 3.1 EXCEL开发过程简介 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 4.3 保存对模块所做的改变 9 4.4 变量 9 4.4.1 变 量的数据类型 9 4.4.2 用Dim 语句创建变量(声明变量 ) 10 4.4.3

4、变 量命名的惯例 . 10 4.4.4 使用数组. 10 4.4.5 变量赋值. 11 第五课 利用VBA设置工作表使用权限 .11 1使用W ITH语句。 错误!未定义书签。 2使用对象变量。 .错误!未定义书签。 方法 3:减少对象的激活和选择 错误!未定义书签。 方法 4:关闭屏幕更新 错误!未定义书签。 第六课 提高EXCEL中VBA的效率 12 方法 1:尽量使用VBA原有的属性、方法和W ORKSHEET函数 12 方法 2:尽量减少使用对象引用,尤其在循环中 .12 1使用Wi th语句。 12 2使用对象 变量。 12 3在循环中 要尽量减少对象的访问。 13 方法 3:减少对

5、象的激活和选择 13 方法 4:关闭屏幕更新 13 第七课 如何在EXCEL里使用定时器 .13 三、学习微软 EXCEL 2002 VBA 编程和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 14 运行宏的其它方法 27 15 使用键盘快捷键运行宏 27 16

6、 通过菜单运行宏 28 17 通过工具栏按钮运行宏 30 18 通过工作表里面的按钮运行宏 31 19 保存宏 32 20 打印宏 32 21 保存宏在个人宏工作簿 32 22 打开含有宏的工作簿 34 23VB编辑窗口 .35 24 了解工程浏览窗口 35 25 了解属性窗口 36 26 了解代码窗口 36 27 VB编辑器里的其它窗口 38 28 接下来 39 第二章 VBA 第一步 39 1 了解指令,模块和过程 39 2 VBA工程命名 39 3 模块重命名 40 4 从其它工程调用过程 41 5 了解对象,属性和方法 42 6 学习对象,属性和方法 43 7 句法和文法 45 8 打

7、断很长的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 24 学习对象 62 25 电子表格单元格操作 62 26 使用R ANGE属性 62 27 使用C ELLS属性 62 28 使用O FFSET属性 63

8、29 选择单元格的其它方法 64 30 选择行和列 64 31 获取工作表信息 65 32 往工作表输入数据 65 33 返回工作表中的信息 65 34 单元格格式 66 35 移动,复制和删除单元格 66 36 操作工作簿和工作表 67 37 操作窗口(W INDOWS) .67 38 管理E XCEL应用程序 68 39 接下来 68 第三章 了解变量,数据类型和常量 .69 1 保存VBA语句的结果 69 2 变量是什么 69 3 数据类型 69 4 如何产生变量 70 5 如何声明变量 71 6 明确变量的数据类型 72 7 变量赋值 73 8 强制声明变量 75 9 了解变量范围 7

9、6 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 1.关于函数过程 .82 2.创建函数过程 .82 3.执行函数过程 .84 4.从工作表里运行函数过程 .84 5.从另外一个VBA过程里运行函数过程 .85 6.传递参数 .86 7.明确参数类型 .87 8.按地址和按值传递参数 .88

10、9.使用可选的参数 .88 10.定位内置函数 .89 11.使用M SGBOX函数 .90 12.MSGBOX函数的运行值 .94 13.使用I NPUTBOX函数 95 14.数据类型转变 .96 15.使用I NPUTBOX方法 97 16.使用主过程和子过程 .100 17.接下来 .102 第五章 基于VBA做决定 102 1.关系和逻辑运算符 .102 2.IFT HEN语句 .103 3.基于多于一个条件的决定 .105 4.THE IFT HENE LSE语句 .106 5.IFT HENE LSEIF语句 108 6.嵌套的I FT HEN语句 .110 7.SELECT C

11、ASE语句 .110 8.和C ASE子句一起使用I S.112 9.确定C ASE子句里数值的范围 113 10.在C ASE子句里确定多个表达式 .114 11.接下来 .114 第六章 在VBA中重复操作 .114 1.DO LOOPS: DOW HILE和D OU NTIL114 2.观察过程执行 .117 3.WHILEW END循环 118 4.FORN EXT 循环 .119 5.FOR EACHN EXT循环 .120 7.提前跳出循环 .121 8.循环嵌套 .122 9.接下来 .122 第七章 利用VBA数组管理数据清单和表格 122 1.了解数组 .123 2.声明数组

12、 .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函数和UB OUND函数 131 13.数组中的错误 .132 14.数组作为参数 .134 15.接下来 .134 第八章 利用VBA操纵文件和文件夹 .134 1.获取当前文件夹的名称(C URDIR函数) .135 2.更改文件或文件夹名称(N AME函数) .135 3.检查文件或

13、文件夹是否存在(D IR函数) 136 4.获得文件修改的日期和时间(F ILEDATETIME函数) .137 5.获得文件大小(F ILELEN函数) .138 6.返回和设置文件属性(G ETATTR函数和S ETATTR函数) .138 7.更改缺省文件夹或驱动器(C HDIR语句和C HDRIVE语句) .139 8.创建和删除文件夹(M KDIR语句和R MDIR语句) 140 9.复制文件(F ILECOPY语句) 140 10.删除文件(K ILL语句) 142 11.从文件读取和写入数据(I NPUT/OUTPUT) .142 12.文件访问类型 .142 13.使用顺序文件

14、 .143 14.读取储存于顺序文件里的数据 .143 15.逐行读取文件 .143 16.从顺序文件中读取字符 .144 17.读取分隔文本文件 .145 18.往顺序文件里写数据 .146 19.使用W RITE # 和P RINT # 语句 147 20.操作随机文件 .148 21.创建用户定义的数据类型 .148 22.操作二进制文件 .152 23.操作文件和文件夹的时髦方法 .153 24.使用WSH获取文件信息 .155 25.FILESYSTEMOBJEC的方法和属性 156 26.对象F ILE的属性 160 27.文件夹对象属性 .161 28.驱动器对象属性 .161

15、29.使用WSH创建文本文件 .162 30.使用WSH进行其它操作 .164 31.运行其它应用程序 .164 32.创建快捷方式 .165 33.接下来 .166 第九章 利用VBA控制其它应用程序 .167 1.启动应用程序 .167 2.在应用程序之间切换 .169 3.控制其它应用程序 .170 4.控制应用程序的其它方法 .171 5.了解自动控制 .172 6.了解链接和嵌入 .172 7.使用VBA进行链接和嵌入 .173 8.COM和自动控制 .174 9.了解绑定 .174 10.后期绑定 .174 11.早期绑定 .174 12.建立到对象库的引用 .175 13.创建自

16、动控制对象 .176 14.使用C REATEOBJECT函数 .176 15.使用自动控制创建一个新的W ORD文档 .177 16.使用G ETOBJECT函数 177 17.打开存在的W ORD文档 178 18.使用关键字N EW179 19.使用自动控制访问M ICROSOFT OUTLOOK.180 20.接下来 .181 第十章 对话框和自定义窗体 181 1.文件打开和另存为对话框 .183 2.GETOPENFILENAME和G ETSAVEASFILENAME方法 .187 3.创建窗体 .188 4.创建用户窗体的工具 .190 5.标签 .191 6.文字框 .191

17、7.框架 .191 8.选项按钮 .191 9.复选框 .192 10.切换按钮 .192 11.列表框 .192 12.复合框 .192 13.滚动条 .192 14.旋转按钮 .192 15.图像 .192 16.多页控件 .192 17.TABSTRIP控件 .193 18.REFEDIT控件 .193 19.在窗体上放置控件 .193 20.应用程序示例 1:信息调查 193 21.在窗体上添加按钮、选项框和其它控件 .194 22.更改控件名称 .197 23.设置其它控件属性 .197 24.准备工作表以储存窗体数据 .198 25.显示自定义窗体 .199 26.设置T AB顺序

18、 199 27.了解窗体和控件事件 .200 28.编写VBA过程对窗体和控件事件反应 .201 29.编写过程来初始化窗体 .201 30.编写过程填充列表框控件 .203 31.编写过程控制选项按钮 .203 32.编写过程同步文字框和旋转按钮 .204 33.编写过程关闭用户窗体 .204 34.转移窗体数据到工作表 .205 35.使用I NFO SURVEY应用程序 .206 36.应用程序示例 2:学生和考试 206 37.使用多页和T ABSTRIP控件 206 38.给窗体S TUDENTS AND EXAMS自定义窗体编写VBA过程 208 39.使用自定义窗体S TUDEN

19、TS AND EXAMS .212 40.接下来 .214 第十一章 自定义集合和类模块 214 1.使用集合 .214 2.声明自定义集合 .215 3.给自定义集合添加对象 .215 4.从自定义集合移出对象 .216 5.创建自定义对象 .217 6.创建类 .218 7.变量声明 .218 8.定义类的属性 .218 9.创建P ROPERTY GET过程 .219 10.创建P ROPERTY LET过程 .219 11.创建类方法 .220 12.创建类的示例 .220 13.类模块里的事件过程 .221 14.创建用户界面 .221 15.观察VBA过程的执行 .229 16.接

20、下来 .231 第十二章 使用VBA创建自定义菜单和工具栏 .231 1.工具栏 .232 2.创建自定义工具栏 .233 3.删除自定义工具栏 .235 4.使用C OMMANDBAR的属性 235 5.使用C OMMANDBAR控件 235 6.理解和使用控件属性 .237 7.控件方法 .239 8.使用菜单 .240 9.菜单编程 .241 10.创建子菜单 .243 11.修改内置快捷菜单 .244 12.创建快捷菜单 .247 13.接下来 .249 第十三章 调试VBA过程和处理错误 .249 1.测试VBA过程 .249 2.终止过程 .249 3.使用断点 .250 4.在中

21、断模式下使用立即窗口 .253 5.使用S TOP语句 254 6.添加监视表达式 .254 7.清除监视表达式 .256 8.使用快速监视 .256 9.使用本地窗口和调用堆栈对话框 .257 10.逐句运行VBA过程 .258 11.逐句运行过程 .259 12.逐过程执行过程 .259 13.设置下一条语句 .260 14.显示下一条语句 .260 15.终止和重新设置VBA过程 .260 16.了解和使用条件编译 .260 17.操纵书签 .262 18.捕捉错误 .262 17.接下来 .266 第十四章 微软EXCEL 2002 中的事件编程 .266 1.事件过程介绍 .266

22、2.激活和失活事件 .267 3.事件次序 .268 4.工作表事件 .268 5.工作簿事件 .272 6.图表事件 .282 7.内嵌图表事件 .284 8.可为应用软件对象识别的事件 .285 9.查询表时间 .288 10.接下来 .289 第十五章 在EXCEL里使用ACCESS 289 1.对象库 .289 2.建立对对象库的引用 .292 3.链接到A CCESS.293 4.使用A UTOMATION链接到A CCESS数据库 .293 5.使用DAO链接到A CCESS数据库 .295 6.使用ADO链接到A CCESS数据库 .295 7.从E XCEL执行A CCESS任

23、务 .296 8.创建新A CCESS数据库 .296 9.打开A CCESS窗体 .298 10.打开A CCESS报表 .300 11.运行A CCESS查询 .301 12.运行选择查询 .302 13.运行参数查询 .303 14.调用A CCESS函数 .304 15.获取A CCESS数据到E XCEL工作表 .304 16.使用G ETROWS方法获取数据 .304 17.使用C OPYFROMRECORDSET方法获取数据 .305 18.使用T RANSFERSPREADSHEET方法获取数据 306 19.使用O PENDATABASE方法 .307 20.从A CCESS

24、数据创建文本文件 .309 21.从A CCESS数据创建查询表 .310 22.在E XCEL里使用A CCESS数据 .311 23.用A CCESS数据创建内嵌图表 .311 24.传输E XCEL电子表格到A CCESS数据库 .313 25.将E XCEL电子表格链接到A CCESS数据库 .313 26.将E XCEL电子表格导入A CCESS数据库 .314 27.放置E XCEL数据到A CCESS表中 .314 28.接下来 .316 VBA 语言基础 橄榄树整理 1一、VBA语言基础 Zhou Jibin 2004-11-30 第一节 标识符 一定义 标识符是一种标识变量、

25、常量、过程、函数、类等语言构成单位的符号,利用它可以完成对变量、常量、过程、函数、类等的引用。 二命名规则 1) 字母打头,由字母、数字和下划线组成,如 A987b_23Abc 2) 字符长度小于 40, (Excel2002 以上中文版等,可以用汉字且长度可达 254 个字符) 3) 不能与 VB 保留字重名,如 public, priv ate, dim, goto, next, with, integer, single等 第二节 运算符 定义:运算符是代表 VB某种运算功能的符号。 1)赋值运算符 = 2)数学运算符 2. 过程名 参数 1, 参数 2 VBA 语言基础 橄榄树整理 5

26、debug.print x1,y1 结果是 12、112,y1 按地址传递改变了值,而 x1 按值传递,未改变原值 End sub 二Function 函数 函数实际是实现一种映射,它通过一定的映射规则,完成运算并返回结果。参数传递也两种:按值传递(ByVal)和按地址传递(ByRef)。如下例: Function password(ByVal x as integer, byref y as integer) as boolean If y=100 then y=x+y else y=x-y x=x+100 if y=150 then password=true else password=

27、false End Function Sub call_password () Dim x1 as integer Dim y1 as integer x1=12 y1=100 if password then 调用函数:1. 作为一个表达式放在=右端 ; 2. 作为参数使用 debug.print x1 end if End sub 三Property 属性过程和 Event 事件过程 这是 VB 在对象功能上添加的两个过程,与对象特征密切相关,也是 VBA 比较重要组成,技术比较复杂,可以参考相关书籍。 第十二节内部函数 在 VBA 程序语言中有许多内置函数,可以帮助程序代码设计和减少代码

28、的编写工作。 一测试函数 IsNumeric(x) 是否为数字, 返回 Boolean 结果,True or False IsDate(x) 是否是日期, 返回 Boolean 结果,True or False IsEmpty(x) 是否为 Empty, 返 回Boolean 结果,Tr ue or False IsArray(x) 指出变量是否为一个数组。 IsError(expression) 指出表达式是否为一个错误值 IsNull(expression) 指出表达式是否不包含任何有效数据 (Null)。 IsObject(identifier)指出标识符是否表示对象变量 二数学函数 S

29、in(X)、Cos(X)、Tan (X)、Atan(x) 三角函数,单位为弧度 Log(x) 返回x 的自然对数 Exp(x)返回 exAbs(x) 返回绝对值 Int(number)、 Fix(number) 都返回参数的整数部分, 区别: Int 将 -8.4 转换成 -9, 而 Fix 将-8.4 转换成 -8 Sgn(number) 返回一个 Vari ant (Integer),指出参数的正负号 Sqr(number) 返回一个 Double,指定参数的平方根 VarType(varname) 返回一个 Integer,指出变量的子类型 Rnd(x)返回 0-1 之间的单精度数据,x

30、 为随机种子 三字符串函数 Trim(string) 去掉 string左右两端空白 Ltrim(string) 去掉 string左端空白 Rtrim(string) 去掉 string右端空白 Len(string) 计算 string 长度 Left(string, x) 取 string 左段 x 个字符组成的字符串 Right(string, x) 取 string 右段 x 个字符组成的字符串 Mid(string, start,x) 取 string 从start 位开始的 x 个字符组成的字符串 Ucase(string) 转换为大写 VBA 语言基础 橄榄树整理 6Lcase

31、(string) 转换为小写 Space(x) 返回x个空 白的字符串 Asc(string) 返回一个 integer,代表字符串中首字母的字符代码 Chr(charcode) 返回 string,其中包含有与指定的字符代码相关的字符 四转换函数 CBool(expression) 转换为Boolean 型 CByte(expression) 转换为 Byte 型 CCur(expression) 转换为 Currency 型 CDate(expression) 转换为 Date 型 CDbl(expression) 转换为Double 型 CDec(expression) 转换为Decem

32、al 型 CInt(expression) 转换为Integer 型 CLng(expression) 转换为 Long 型 CSng(expression) 转换为Single 型 CStr(expression) 转换为String 型 CVar(expression) 转换为Variant 型 Val(string) 转换为数据型 Str(number) 转换为String 五时间函数 Now 返回一个 Variant (Date),根据计算机系统设置的日期和时间来指定日期和时间。 Date 返回包含系统日期的 Var iant (Date)。 Time 返回一个指明当前系统时间的 Va

33、 riant (Date)。 Timer 返回一个 Single,代表从午夜开始到现在经过的秒数。 TimeSerial(hour, minute, second) 返回一个 Variant (Date),包含具有具体时、分、 秒的时间。 DateDiff(interval, date1, date2, firstdayofweek, firstweekofyear) 返回 Variant (Long) 的值,表示两个指定日期间的时间间隔数目 Second(time) 返回一个 Variant (Integer),其值为 0 到 59 之间的整数,表示一分钟之中的某个秒 Minute(time

34、) 返回一个 Variant (Integer),其值为 0 到 59 之间的整数,表示一小时中的某分钟 Hour(time) 返回一个 Variant (Integer),其值为 0 到 23 之间的整数,表示一天之中的某一钟点 Day(date) 返回一个 Variant (In teger),其值为 1 到 31 之间的整数,表示一个月中的某一日 Month(date) 返回一个 Variant (Integer),其值为 1 到 12 之间的整数,表示一年中的某月 Year(date) 返回 Va riant (Integer),包含表示年份的整数。 Weekday(date, fir

35、stdayofweek) 返回一个 Variant (Integer),包含一个整数,代 表某个日期是星期几 第十三节 文件操作 文件 Dir(pathname, attributes) ; pathname 可选参数,用来指定文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。如果没有找到 pathname,则会返回零长度字符串 (“); attributes 可选参数。常数或数值表达式,其总和用来指定文件属性。如果省略,则会返回匹配 pathname 但不包含属性的文件。 删除 Kill pathname 从磁盘中删除文件, pathname 参数是用来指定一个文件名 RmDir pa

36、thname 从磁盘中删除目录,pathname 参数是用来指定一个文件夹 打开 Open pathname For mode Access access lock As #filenumber Len=reclength 能够对文件输入/输出 (I/O)。 pathname 必要。字符串表达式,指定文件名,该文件名可能还包括目录、文件夹及驱动器。 VBA 语言基础 橄榄树整理 7mode 必要。关键字,指定文件方式,有 Append、Binary、In put、Output、或 Random 方式。如果未指定方式,则以 Random 访问方式打开文件。 access 可选。关键字,说明打开的

37、文件可以进行的操作,有 Read、W rite、或 Read Write 操作。 lock 可选。 关键字, 说明限定于其它进程打开的文件的操作, 有 Shared、 Lock Read、 Lock Write、和 Lock Read Write 操作。 filenumber 必要。一个有效的文件号, 范围在 1 到 511 之间。使用 FreeFile 函数 可得到下一个可用的文件号。 reclength 可选。小于或等于 32,767(字节)的一个数。对于用随机访问方式打开的文件,该值就是记录长度。对于顺序文件,该值就是缓冲字符数。 说明 对文件做任何 I/O 操作之前都必须先打开文件。O

38、pen 语句分配一个缓冲区供文件进行 I/O 之用,并决定缓冲区所使用的访问方式。 如果 pathname 指定的文件不存在,那么,在用 Append、Binary、Output、或 Random 方式打开文件时,可以建立这一文件。 如果文件已由其它进程打开,而且不允许指定的访问类型,则 Open 操作失败,而且会有错误发生。如果 mode 是 Binary 方式,则 Len 子句会被忽略掉。 重要 在 Binary、Input 和 Random 方式下可以用不同的文件号打开同一文件,而不必先将该文件关闭。在 Append 和 Output 方式下,如果要用不同的文件号打开同一文件,则必须在打

39、开文件之前先关闭该文件。 读入 Input #filenumber, varlist 从已打开的顺序文件中读出数据并将数据指定给变量 Get #filenumber, recnumber, varname 将一个已打开的磁盘文件读入一个变量之中。 写入 Write #filenumber, outputlist 将数据写入顺序文件 Print #filenumber, outputlist 将格式化显示的数据写入顺序文件中 Put #filenumber, recnumber, varname 将一个变量的数据写入磁盘文件中。 关闭 Close filenumberlist 关闭 Open 语

40、句所打开的输入/输出 (I/O) 文件 注意 如果今后想用 Input # 语句读出文件的数据,就要用 Write # 语句而不用 Print # 语句将数据写入文件。因为在使用 Write # 时,将数据域分界就可确保每个数据域的完整性,因此可用 Input # 再将数据读出来。 使用 Write # 还能确保任何地区的数据都被正确读出。 Write 与 Print # 语句不同,当要将数据写入文件时,Write # 语句会在 项目和用来标记字符串的引号之间插入逗号 。Write # 语句在将 outputlist 中的 最后一个字符写入文件后会插入一个新行字符,即回车换行符,(Chr(13

41、) + Chr(10)。 其他文件函数 LOF(filenumber) 返回一个 Long,表示用 Open 语句打开的文件的大小,该大小以字节为单位。 EOF(filenumber) 返回一个 Integer ,它包含 Boolean 值 True,表明已经到达为 Random 或顺序 Input 打开的文件的结尾。 Loc(filenumber) 返回一个 Long,在已打开的文件中指定当前读/写位置 Seek(filenumber) 返回 一个 Long,在 Open 语句打开的文件中指定当前的读/写位Visual BASIC 程序设计网络教学 橄榄树整 理 1二、Visual BASI

42、C程序设计网络教学 第一课 VBA是什么 1.1 VBA 是什么 直到 90 年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用 EXCEL 的宏语言来使 EXCEL 自动化,使用 WORD BASIC 使 WORD 自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言-Visual Basic For Application(VBA),可以认为 VBA 是非常流行的应用程序开发语言 VASUAL BASIC 的子集.实际上 VBA 是“寄生于“VB 应用程序的版本.VBA和 VB 的区别包括如下几个方面

43、: 1. VB 是设计用于创建标准的应用程序,而 VBA 是使已有的应用程序(EXCEL 等)自动化 2. VB 具有自己的开发环境,而 VBA 必须寄生于已有的应用程序. 3. 要运行 VB 开发的应用程序,用户不必安装 VB,因为 VB 开发出的应用程序是可执行文件(*.EXE),而VBA 开发的程序必须依赖于它的“ 父“应用程序,例如 EXCEL. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORD ACCESS OU

44、TLOOK FOXPRO PROWERPOINT 中用 VBA 创建解决方案的大部分知识. * VBA 一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA 可以称作 EXCEL 的“遥控器“. VBA 究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将 EXCEL 用做开发平台实现应用程序. 1.2 EXCEL环境中基于应用程序自动化的优点 也许你想知道 VBA可以干什么?使用 VBA 可以实现的功能包括: 1. 使重复的任务自动化. 2. 自定义 EXCEL 工具栏,菜单和界面. 3. 简化模板的使

45、用. 4. 自定义 EXCEL,使其成为开发平台. 5. 创建报表. 6. 对数据进行复杂的操作和分析. 用 EXCEL 作为开发平台有如下原因: 1. EXCEL 本身功能强大,包括打印,文件处理,格式化和文本编辑. 2. EXCEL 内置大量函数. 3. EXCEL 界面熟悉. 4. 可连接到多种数据库. 用其他语言开发应用程序,一半的工作是编写一些基本功能的模块,包括文件的打开和保存,打印,复制等.而用 EXCEL 作为开发平台,则由于 EXCEL 已经具备这些基本功能,你要做的只是使用它. 1.3 录制简单的宏 在介绍学习 VBA 之前,应该花几分钟录制一个宏。 新术语:“宏“,指一系

46、列 EXCEL 能够执行的 VBA 语句。 以下将要录制的宏非常简单,只是改变单元格颜色。请完成如下步骤: 1)打开新工作簿,确认其他工作簿已经关闭。 2)选择A1 单元格。调出“常用“工具栏。 3)选择“工具“-“宏“-“录制新宏“。 4)输入“改变颜色“作为宏名替换默认宏名,单击确定,注意,此时状态栏中显示“录制“,特别是“停止录制“工具栏也显示出来。替换默认宏名主要是便于分别这些宏。 宏名最多可为 255 个字符,并且必须以字母开始。其中可用的字符包括:字母、数字和Visual BASIC 程序设计网络教学 橄榄树整 理 2下划线。宏名中不允许出现空格。通常用下划线代表空格。 5)选择“

47、格式“的“单元格“,选择“图案“选项中的红色,单击“确定“。 6)单击“停止录制“工具栏按钮,结束宏录制过程。 如果“停止录制“工具栏开始并未出现,请选择“工具“-“宏“-“停止录制“。 录制完一个宏后就可以执行它了。 1.4 执行宏 当执行一个宏时,EXCEL 按照宏语句执行的情况就像 VBA 代码在对 EXCEL 进行“遥控“。但VBA 的“遥控“不仅能使操作变得简便,还能使你获得一些使用 EXCEL 标准命令所无法实现的功能。而且,一旦熟悉了 EXCEL 的“遥控“,你都会奇怪自己在没有这些“遥控“的情况下,到底是怎么熬过来的。要执行刚才录制的宏,可以按以下步骤进行: 1)选择任何一个单

48、元格,比如 A3。 2)选择“工具“-“宏“-“宏“,显示“宏“对话框。 3)选择“改变颜色“,选择“执行“,则 A3 单元格的颜色变为红色。试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象。 1.5 查看录制的代码 到底是什么在控制 EXCEL 的运行呢?你可能有些疑惑.好,让我们看看 VBA 的语句吧. 1)选择“工具“-“宏“-“宏“,显示“宏“对话框。 2)单击列表中的“改变颜色“,选择“编辑“按钮。 此时,会打开 VBA 的编辑器窗口(VBE) 。关于该编辑器,以后再详细说明,先将注意力集中到显示的代码上。代码如下: (日期和姓名会有不同) Sub 改变颜色()

49、改变颜色 Macro xw 记录的宏 2000-6-10 With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid .PatternColorIndex = xlAutomatic End With End Sub 将来会十分熟悉这种代码,虽然现在它们看上去像一种奇怪的外语。学习 VBA 或编程语言在某种程度上比较像在学习一种外语。 Sub 改变颜色():这是宏的名称。 中间的以“ “开头的五行称为“注释“,它在录制宏时自动产生。 以 With 开头到 End With 结束的结构是 With 结构语句,这段语句是宏的主要部分。注意单词“selection

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报