编辑: 思念那么浓 2014-09-05
第一课 VBA是什么 1.

1 VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VASUAL BASIC 的子集.实际上VBA是 寄生于 VB应用程序的版本.VBA和VB的区别包括如下几个方面: 1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序. 3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的 父 应用程序,例如EXCEL. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA可以称作EXCEL的 遥控器 . VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序. 1.2 EXCEL环境中基于应用程序自动化的优点 也许你想知道VBA可以干什么?使用VBA可以实现的功能包括: 1. 使重复的任务自动化. 2. 自定义EXCEL工具栏,菜单和界面. 3. 简化模板的使用. 4. 自定义EXCEL,使其成为开发平台. 5. 创建报表. 6. 对数据进行复杂的操作和分析. 用EXCEL作为开发平台有如下原因: 1. EXCEL本身功能强大,包括打印,文件处理,格式化和文本编辑. 2. EXCEL内置大量函数. 3. EXCEL界面熟悉. 4. 可连接到多种数据库. 用其他语言开发应用程序,一半的工作是编写一些基本功能的模块,包括文件的打开和保存,打印,复制等.而用EXCEL作为开发平台,则由于EXCEL已经具备这些基本功能,你要做的只是使用它. 1.3 录制简单的宏 在介绍学习VBA之前,应该花几分钟录制一个宏. 新术语: 宏 ,指一系列EXCEL能够执行的VBA语句. 以下将要录制的宏非常简单,只是改变单元格颜色.请完成如下步骤: 1)打开新工作簿,确认其他工作簿已经关闭. 2)选择A1单元格.调出 常用 工具栏. 3)选择 工具 ― 宏 ― 录制新宏 . 4)输入 改变颜色 作为宏名替换默认宏名,单击确定,注意,此时状态栏中显示 录制 ,特别是 停止录制 工具栏也显示出来.替换默认宏名主要是便于分别这些宏. 宏名最多可为255个字符,并且必须以字母开始.其中可用的字符包括:字母、数字和下划线.宏名中不允许出现空格.通常用下划线代表空格. 5)选择 格式 的 单元格 ,选择 图案 选项中的红色,单击 确定 . 6)单击 停止录制 工具栏按钮,结束宏录制过程. 如果 停止录制 工具栏开始并未出现,请选择 工具 ― 宏 ― 停止录制 . 录制完一个宏后就可以执行它了. 1.4 执行宏 当执行一个宏时,EXCEL按照宏语句执行的情况就像VBA代码在对EXCEL进行 遥控 .但VBA的 遥控 不仅能使操作变得简便,还能使你获得一些使用EXCEL标准命令所无法实现的功能.而且,一旦熟悉了EXCEL的 遥控 ,你都会奇怪自己在没有这些 遥控 的情况下,到底是怎么熬过来的.要执行刚才录制的宏,可以按以下步骤进行: 1)选择任何一个单元格,比如A3. 2)选择 工具 ― 宏 ― 宏 ,显示 宏 对话框. 3)选择 改变颜色 ,选择 执行 ,则A3单元格的颜色变为红色.试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象. 1.5 查看录制的代码 到底是什么在控制EXCEL的运行呢?你可能有些疑惑.好,让我们看看VBA的语句吧. 1)选择 工具 ― 宏 ― 宏 ,显示 宏 对话框. 2)单击列表中的 改变颜色 ,选择 编辑 按钮. 此时,会打开VBA的编辑器窗口(VBE).关于该编辑器,以后再详细说明,先将注意力集中到显示的代码上.代码如下:(日期和姓名会有不同) Sub 改变颜色() '

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题