谈VBA最基础入门.DOC

上传人:天*** 文档编号:945089 上传时间:2018-11-09 格式:DOC 页数:44 大小:1.41MB
下载 相关 举报
谈VBA最基础入门.DOC_第1页
第1页 / 共44页
谈VBA最基础入门.DOC_第2页
第2页 / 共44页
谈VBA最基础入门.DOC_第3页
第3页 / 共44页
谈VBA最基础入门.DOC_第4页
第4页 / 共44页
谈VBA最基础入门.DOC_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、1谈 VBA 最基础入门如果你是学习 Excel 的朋友,对 VBA 这个概念不陌生吧?VBA 的功能实在太强大,可初学的我们,面对那一串串尤如外星文的代码,你是不是看得头昏脑胀?想学,是不是却茫然得找不到入口?在这里,我把我自己的学习心得和笔记放出来,和大家一起分享交流,一起学习,共同进步。对了,还要告诉大家,我也是初学者,不是高手,如果有什么说得不对的,希望大家及时指出。我的目的不是教学,而是期望创造一个有你,有我,有他的学习氛围! 开始吧,记住一个共同的目标掀开那层神秘的面纱,看看 VBA 的真实面目。什么是 VBA?为什么要学习 VBA? =VBA 是 Visual Basic For

2、 Application 的简称,具体说来,可能让叶枫三天三夜也说不完,叶枫也只知道 VBA 是建立在 Office 中的一种应用程序开发工具,其实知道这也就够了。很懒很笨的叶枫只想吃香喷喷的大米饭,可从没想要知道大米饭是怎么来的。Excel 本身的内置函数其实已经很强大了,甚至有人说,只要学会二三十个函数,就已经可以满足普通用户日常的工作需求。那我们为什么要学 VBA?是的,如果只需要满足一些普通的工作需求可能永远也不会用到 VBA,但在实际应用的过程中,人们的操作却越来越多,需要也越来越高,这时候就需要用 VBA 来对 Excel 进行二次开发了,VBA 可以有效地自定义和扩展Excel

3、的功能。但有一点叶枫想要告诉大家,VBA 功能很强大,但并不是万能的,也并不是所有工作都需要用 VBA 来解决,也并不是所有工作用 VBA 来解决都会很简单,这要根据实际情况而定,有些工作你用 VBA 来解决的话反而会变得很麻烦。VBA 与宏刚开始的内容听起来很枯燥,请大家不要分心,耐着性子看下去,兴趣总是慢慢积累的。1、亲自动手,录制一段属于自己的宏提到 VBA,相信很多人想到的就是宏,但是 VBA 与宏是不是一回事?我觉得它们不是一回事,但这不重要,我们要做的是先来认识一下宏。宏是什么?我理解的宏是一系列固定动作的集合,这个集合当遇到让他执行的条件后就逐个执行。有人把我们录制的宏比喻成一个

4、武术运动员在比赛中练就的一段武术套路动作,这个套路遇到一定的条件(比赛)就执行。好了,别闲着,动一动你可爱的右手,点点鼠标,打开一个 Excel 文件,录制一段宏来来研究研究,步骤如下:(1)选中任意一个单元格;(2)打开菜单工具宏录制新宏,调出宏录制对话框,输入宏名(mysub) ,确定;(3)设置单元格字体为仿宋体,红色;(4)点击停止录宏。这样,一个简单的设置单元格格式的宏就录好了。-2、鼠标点一点,宏给单元格换新装下面我们来执行这段宏。(1)选中需要设置的任意单元格或单元格区域(为了看出效果,单元格最好有字符) ;(2)打开菜单工具宏宏,显示“宏”对话框(快捷键:Alt+F8);(3)

5、选择我们刚才录制的宏,单击“执行” 。这样我们看到已经为刚才选中的单元格的字体已被修改成仿宋体,红色。自己动手试着录制几段宏,再执行一下,加深印象。2神奇了吧?以后当你再需要一遍又一遍地重复若干相同的操作的时候,会不会想到让宏来替你做这一切?这是一个不错的奴隶,不用花钱,且不用开工资,赚了吧?好了,收起你贪婪的笑容,继续往下看。宏是什么?现在相信你能想出一千种说法,由你了,又笨又懒的叶枫可没你聪明,也不再多说。上面说的执行宏的过程是不是让你感觉很麻烦?希望用快捷键来控制宏?这个我们可以在录制宏之前在录制宏对话框里进行设置。也可以在录制宏后进行设置,按 Alt+F8 显示宏对话框,单击“选项”

6、,在“宏选项”对话框里进行设置-3、寻根问底,找到宏的老窝如果你忘记了,请你再打开宏录制对话框,在宏名的下面,有一个“保存在”的选项,点一点下拉的箭头,我们可以看到,宏可以保存在三种不同的位置,分别是:(1)当前工作簿(系统默认):宏保存在当前工作簿的模块里,只有当该工作簿打开时,宏才起作用。(2)新工作簿:新建一个工作簿保存。 (3)个人宏工作簿:这是为宏而设计的一种特殊的具有自动隐藏特性的工作簿,如果你要让某个宏在多个工作簿都能使用,那么就应当创建个人宏工作簿,并将宏保存于其中。上面我们录制的宏是保存在当前工作簿里,今天我们在这里也只介绍保存在当前工作表里的宏。-4、拨开层层迷雾,查看庐山

7、真面目宏靠什么来控制 Excel 的运行?是不是感觉深在浓浓的迷雾里,感觉一头雾水?让我们鼓一鼓劲,拨开它的衣服,开开那家伙里面到底是什么?(1)按 Alt+F8 快捷键打开“宏”对话框;(2)选择我们刚才录制的宏,点“编辑”按钮。眼前一亮吧?这是一个新的天地VBA 的编辑器窗口(VBE) ,这个我们以后再说,先将注意力集中到显示的代码上。代码如下: 复制内容到剪贴板 代码:Sub mysub() mysub Macro 宏由 ggsmart 录制,时间: 2009-2-27With Selection.Font.Name = “仿宋_GB2312“.Size = 12.Strikethrou

8、gh = False.Superscript = False.Subscript = False.OutlineFont = False.Shadow = False.Underline = xlUnderlineStyleNone.ColorIndex = xlAutomaticEnd WithSelection.Font.ColorIndex = 3End Sub现在你可能感觉到上面这些乱七八糟的代码会很陌生,甚至在问自己是不是来到外星人的世界,反正叶枫当初是这样感觉的,但不要为此感到害怕,将来我们会慢慢熟悉他,就像闭上眼睛也能准确地将那个又大又红的苹果送到自己的嘴里。- 5、再进一步,给

9、宏安上门铃一遍一遍地在宏对话框里选择宏名称,按“执行”按钮来运行宏的麻烦是不是让你郁闷得有些想吐血?指定快捷键虽然方便,但别人用自己的工作表时能不能快速上手?就算是自己,如果宏多了,或是放的时间长了,你还记得哪个快捷键控制哪个宏?作为 excel 开发者,一个主要的目标是为自动化提供一个易于操作的界面, “按钮”是最常见的界面组成元素之一,我们可以把宏指定给特定的按钮,通过按钮来执行宏,还是用刚才我们录制的那个宏来举例。通过使用3“窗体”工具栏,可以为工作簿中的工作表添加按钮。在创建完一个按钮后,可以为它指定宏,然后你的用户就可以通过单击按钮来执行宏。在本练习中,将创建一个按钮,并为它指定一个

10、宏,然后用该按钮来执行宏。具体步骤如下:(1)打开菜单视图工具栏窗体,调出窗体工具栏。1.jpg (7 KB)(2)单击“窗体”工具栏中的“按钮”控件,在工作表中希望放置按钮的位置按下鼠标左键,拖动鼠标画出一个按钮,松开鼠标后,Excel 会自动显示“指定宏”对话框。2.jpg (31.38 KB)(3)从“指定宏”对话框中选择“mysub” ,单击“确定” 。这样,就把该宏指定给命令按钮。 引用:课间休息,插播一段广告:按钮,工作表等这些对象就像是 Excel 的众多儿女,儿女太多,怎么称呼这群儿女也是一个问题为了不出现叫“儿子”就七八个一起跑出来,同许多农村父母给儿女起“老大,老二,老三”

11、的称呼一样,xcel 也用这种顺序的起名方法给这些儿女贴上了标签比如第一个按钮是“按钮一” ,再画一个就是“按钮二” ,然后是“按钮三” 、 “铵钮四”等这样,以后你要叫第三个儿子的时候直接叫“按钮三”即可。如果你嫌这个名字乡下味太浓,如果你嫌这个名字不能很好地反映,点击它后会执行怎样的操作不清楚,你可以通过双击按钮表面激活它,可重新为按钮贴上合适的显示标签需要提醒你的是,这里的标签只是它显示在你面前的样子,实际上它是什么名字?我们可以点击它,看一下名称框里是什么。 43.jpg (16.03 KB)为什么显示出来的是一样,而实际的名字却是另一样呢?也许你现在会感到迷茫,但不用管它,以后当我们

12、学习了属性后,一切就自然明白了下面我们来试一试用按钮操作:(1)选择单元格或单元格区域;(2)单击按钮。4.jpg (61.93 KB)按钮就像装在楼下的门铃,美丽的嫦娥仙子家住在 502,猪八戒来到楼下,找准号码 502,轻轻一按, “叮咚,叮咚” ,嫦娥在楼上就给八戒开门了,八戒不用在楼下大声地喊“嫦娥,开门。 ”也不用花两毛钱给嫦娥打个电话,当然更不用顺着下水管从墙上爬进嫦娥的窗户,方便而实在吧?这种遥控式的命令的确能让繁琐的操作变得简单而方便,让我们获得了一些使用 Excel 标准命令所不能实现的功能。如果你是八戒,当你熟悉了如何使用这种遥控一样的门铃以后,你可能都会奇怪自己当初在没有

13、门铃的情况下,那段漫长的爬下水管道的日子是怎么熬过来的。让嫦娥仙子开门的方法有很多种,同样执行宏也有多种方法可以选择,我们还可以把宏指定给图片,自选图形,这些比较简单,和指定给窗体按钮是一样的,同时我们还可以把宏指定给某个“事件” ,比如单击工作表,双击工作表,激活工作表,打开工作簿等,你要安什么要的门铃,选什么样的音乐,随你了。需要强调一点的是,我们刚说的“事件”是一个重要的概念,八戒按门铃,就是一个“事件” ,这个“事件”引发了嫦娥的开门,只有门铃响了,嫦娥才会去开门。除此而外“方法” 、 “对象” 、 “属性”都是接下来我们会经常接触到的,慢慢走,留心点,一路上将会精彩不断。-6、小结到

14、这里,我们对宏应该有一个简单的了解了吧?宏实际上就是一个简单的 VBA 的 Sub 过程,它保存在模块里,以 Sub 开头,以 End Sub 结尾,执行时就从第一句逐句执行,直到 End Sub 结束。就像前面我们说的武术运动员练的那段套路动作,总是抱拳,扎马,出拳然后踢腿,永远不可能没有扎马就出拳,没有出拳就踢腿。我们今天录的这段宏也总是先设字体,再改字体颜色,这种顺序永远不会乱。说完这些,你是不是感觉这些操作古板得没有生气?是不是感觉这宏的操作不能满足自己的需求?叶枫想告诉你的是,宏代码绝不等于 VBA,它只是 VBA 里最简单的运用,尽管许多 Excel 过程都可以用录制宏来完成,但是

15、通过宏代码还是无法完成许多的工作,如:5(1)不可以建立公式,函数;(2)没有判断或循环的功能;(3)不能进行人机交互;(4)无法显示用户窗体;(5)无法与其他软件或文件进行互动。所以,你看了上面的内容后千万不要以为宏就是 VBA 了,更不要以为自己已经会 VBA 了,事实上是你才刚沾上 VBA 的边,或者说连边都没沾上,甚至连宏今天我们都只是作了简单的介绍。路漫漫其修远兮,还等着我们上下去求索,路在脚下,武林高手总是从练习简单的套路动作开始,不要厌倦扎马的单调,静下心多练练,这会是你以后练习武功招式的一个基础,孔子老人家说了,要温故而知新,记得复习巩固,不要学了后面忘了前面,到下次叶枫再见到

16、你的时候你什么都忘记了,好了,今天就到这里,让我们一起加油。VBE 简介=什么是 VBE?相信你还没忘记吧?VBE 就是 VBA 的编辑窗口,所有的 VBA 操作都在 VBE 里完成。VBE 是一个分离出来的应用程序,它可以与 Excel 无缝结合,但是需要说明的是要运行 VBE 必须先运行Excel,VBA 模块与 Excel 工作簿文件一起存储,除非激活 VBE,否则 VBA 模块是看不见的。1、运行 Excel 后,怎样切换换到 VBE 窗口?打开大门的钥匙有很多把,千万别猴急地去爬下水管道。(1)按 ALT+F11 快捷键;(2)选择“工具”“宏” “Visual Basic 编辑器”

17、命令。1.jpg (29.14 KB)(3)右击工作表名称标签,点击查看代码。 2.jpg (17.69 KB)6(4)单击控件工具箱里的“查看代码” 。3.jpg (28.24 KB)如果你的窗口里找不到控件工具箱,请通过“视图”“工具栏” “控件工具箱”打开它。4.jpg (35.59 KB)(5)通过控件工具箱建立一个新的控件,双击控件。 75.jpg (36.24 KB)2、初识 VBE 窗口这个界面相信你不陌生吧?查看宏的时候我们已经见识过它了。6.jpg (85.09 KB)“工程资源管理器”显示一个树型图示,包含了当前在 Excel 中打开的所有 Excel 对象,包含工作表,模

18、块,窗体,加载宏及隐藏的工作簿,每个工作簿被认为是一个工程。在工程资源管理器里右击,可以在右键菜单里选择相应的命令插入模块或窗体。如果你想删除它或者保存它,同样也可以在这里进行相应的操作。87.jpg (30.89 KB)“属性窗口”显示当前你选择的 Excel 对象的属性。选中某个对象后,可以在属性窗口中修改选中的对象的的各样属性如颜色,名称等。8.jpg (37.77 KB)“立即窗口” ,这是一个非常有用的窗口,在其中可以直接执行 VBA 语句,测试语句和调试代码,就跟我们在DOS 下输入 DOS 命令一样。如果你的立即窗口不可见,按 CRTL+G 调出来,可以在里面尝试输入:a1=”我

19、在学习 VBA”回车,看一看 A1 单元格里发生了什么变化?99.jpg (36.51 KB)“代码窗口”是干嘛用的?相信你已经很清楚了,当然是用来编辑 VBA 代码的地方,工程中的每一项都有一个与之相关联的代码窗口,如果要查看某对象的代码窗口,或者说如果要查看某对象上面究竟编写了什么 VBA 代码,在“工程资源管理器”窗口中双击对象即可。10.jpg (30.07 KB)当然,你打开后的窗口不一定和上面一样,VBE 的窗口也不只上面几个,我们可以打开“视图”菜单,在里面进行选择需要显示的窗口。10对象、属性、方法,事件这是很重要的几个概念,是写 VBA 程序的基础,大家仔细读,一定要弄清楚。

20、1、对象及对象层次结构对象就是存在的东西,是 VBA 处理的内容,包括工作簿、工作表、工作表上的单元格区域、图表等。对象可以相互包含,就像一个文件夹里可以包含多个文件夹一样,而这个文件夹又可以被其他的文件夹包含,一个工作簿对象可以包含多个多个工作表对象,一个工作表对象又可以包含多个单元格(或图表,图形等),这种对象的排列模式称为 Excel 的对象模型。-集合这个概念经常遇到,我理解的集合是对相同类型的对象的统称。某中学有 5000 个学生,名字各不相同,我们对他都统称为某中学的学生,而不会一一去叫他们的名字, “某中学的学生”在这里是集合。对象的引用,在 Excel 里,Workbooks

21、集合包含在 Application 对象里,当我们要引用某工作簿的时候,要遵循从大到小的规则。跟表示硬盘里的某个文件的位置一样,比如我们想引用 D 盘“我的文档”文件夹下的名为“我的 VBA 课程.doc”文件时要输入的是:D:我的文档我的 VBA 课程.doc同样,如果我们要引用名称为“mybook.xls”的工作簿时就是:Application.Workbooks(“mybook.xls”)和引用文件不同的是,VBA 里使用的分隔符是点。同理,当我们引用“mybook.xls”里面的工作表“mysheet”时应是:Application.Workbooks(“mybook.xls”).Worksheets(“mysheet”)可以继续延伸到下一层,引用“mybook.xls”里工作表“mysheet”里面的单元格区域“A1:D10”:Application.Workbooks(“mybook.xls”).Worksheets(“mysheet”).Range(“A1:D10”)但是并不是每一次引用都必须这么呆板,就像猪八戒不用每一次都去爬下水管道。如果我们引用的是活动对象,也就是被激活的对象,引用就可以进行简化。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。