EXCEL_VBA编程24学时教程.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《EXCEL_VBA编程24学时教程.pdf》由会员分享,可在线阅读,更多相关《EXCEL_VBA编程24学时教程.pdf(225页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1学时Visual Basic forApplication是什么欢迎使用E x c e l和Visual Basic for Application开发应用程序!作为已经能够熟练使用 E x c e l的用户,你一定对E x c e l强大的功能感到满意。现在,你将逐步提高到更高的水平。即使你以前从来没有编写过程序,也能够使用 Visual Basic for Application开发出解决方案。Vi s u a lBasic for Application是现在可用的最容易学习、最容易使用同时也是最复杂的应用程序自动化语言(过去常常称为宏语言)之一。在这个学时中,通过熟悉宏录制器,将开
2、始学习有关的基础知识。本学时的重点包括:Visual Basic for Application是什么 Excel环境中基于应用程序的自动化的优点 录制一个简单的宏 执行宏 编辑宏 宏录制器的局限性1.1 Visual Basic for Application是什么直到9 0年代早期,使应用程序自动化还是充满挑战性的领域。对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言。例如,可以使用E x c e l的宏语言使E x c e l自动化,使用Word Basic使Microsoft Wo r d自动化,等等。M i c r o s o f t决定让它开发出来的应用程序共享一种通
3、用的自动化语言Visual Basic for Application(V B A),而不是使用不同的自动化语言。可以认为Visual Basic for Application是非常流行的应用程序开发语言Visual Basic的子集。实际上,V B A是“寄生于”Visual Basic应用程序的版本。V B A与Visual Basic的区别包括如下几个方面:Visual Basic是设计用于创建标准的应用程序,而 V B A是用于使已有的应用程序自动化。Visual Basic 具有自己的开发环境,而V B A必须“寄生于”已有的应用程序。要运行Visual Basic开发的应用程序,
4、用户不用在他的系统上访问 Visual Basic,因为Visual Basic开发出的应用程序是可执行的。而由于 V B A应用程序是寄生性的,执行它们要求用户访问“父”应用程序,例如 E x c e l。尽管存在这些不同,Visual Basic和V B A在结构上仍然非常相似。事实上,如果你已经了解了Visual Basic,会发现学习V B A非常快。相应地,学完V B A会给Visual Basic的学习打下坚实的基础。而且,当学会在E x c e l中用V B A创建解决方案后,你就已经具备了在Wo r d、P r o j e c t、A c c e s s、O u t l o o
5、 k、F o x P r o和P o w e r P o i n t中用V B A创建解决方案的大部分知识。V B A的一个关键性特征是从一种 M i c r o s o f t产品或者Visual Basic中学到的知识可以相互转化。V B A究竟是什么?更确切地讲,它是一种自动化语言,可以用它使常用的过程或者进程自动化,可以创建自定义的解决方案,此外,如果你愿意,还可以将 E x c e l用做开发平台实现应用程序。1.2 Excel环境中基于应用程序的自动化的优点你也许希望知道可以用V B A干什么。使用V B A可以实现的功能包括:使重复性的任务自动化。自定义E x c e l中工具栏
6、、菜单和窗体的界面。简化模板的使用。为E x c e l环境添加额外的功能。创建报表。对数据执行复杂的操作和分析。你以前也许没有想到将应用程序用作开发平台。大多数人考虑开发应用程序时,想到的都是像Visual Basic或者C+这样的语言。你希望采用 E x c e l作为开发平台有许多原因,这些原因包括:Excel的应用程序功能强大,包括打印、文件处理、格式化和文本编辑。Excel具有大量可供选择的内置函数。Excel提供熟悉的界面。可连接到多种格式的数据库。如果以前曾经用某种语言编写过程序,你就会知道,一半的工作不得不用来完成一些基本的功能,包括文件的打开和保存,以及剪贴板操作,例如拷贝和
7、粘贴,等等。而这带来了使用应用程序开发解决方案的一个主要的优点寄主应用程序已经具备了各种基本功能。需要做的只是使用它,必须使用E x c e l中包括文件处理、文本编辑和格式化在内的各种功能。因为是在E x c e l中开发解决方案,所以也必须访问E x c e l的扩展函数库。作为E x c e l用户时所熟悉的所有函数(包括S U M、I R R、M A X、F V、P M T和AV G),在作为E x c e l开发者时都是可用的。从解决方案的最终用户的角度看,他们是在已经知道如何使用的应用程序上进行工作,因此他们可从中受益。他们对E x c e l的菜单系统、工具栏和工作表区域都很熟悉
8、。正因为如此,他们会立刻对你的自动化解决方案感到满意。用E x c e l开发解决方案的其他一些优点不是十分明显,例如 E x c e l连接数据库的特征。如果在解决方案的窗体中需要对数据库(例如 Microsoft SQL Server或者Microsoft Access)进行操作,由于E x c e l可以很容易地做到,所以你也可以很容易地做到。1.3 录制简单的宏在介绍学习V B A代码之前,应该花几分钟录制一个宏。E x c e l的宏录制器允许记录一系列的操作,并且将这些操作转换为 V B A代码。即使当你对编写 V B A代码已经完全熟练时,也会在工作时使用宏录制器。作为 V B
9、A开发者,使用宏录制器有两个原因。一个原因是因为使用2使用中文Excel 2000编程 2 4学时教程宏录制器可以节省时间,开发者通常用它来建立应用程序的基础。另一个原因是宏录制器可以用作教学工具,如果你不能确定如何编写一系列的步骤,可以进行录制,再查看代码。新术语宏指一系列以E x c e l能够执行的名字保存的命令。以下将要录制的宏非常简单,只是改变单元格的字体和颜色。虽然有其他方法可以实现这种类型的任务(例如风格、自动套用格式等等),但是这一系列步骤为宏录制器提供了很好的示例。请完成如下步骤:1)打开新的工作簿,确认所有其他工作簿已经关闭(如果它们包含宏或者其他V B A代码),以便能够
10、很容易地对录制的宏进行定位和处理。2)在单元格A 1中输入你的名字,在单元格 B 1中输入你的姓,在单元格 C 1中输入你居住的城市名,在单元格D 1中输入你居住的国家名。以上操作为下面的练习提供用来处理的数据。3)选中单元格A 1。4)选择“工具”、“宏”、“录制新宏”,显示如图1-1所示的“录制新宏”对话框。5)输入“B i g F o n t”作为宏名,键入回车开始录制宏。注意此时 E x c e l应用程序窗口的状态栏中显示“录制”,特别是“停止录制”工具栏也显示出来。宏的名字最多可为 2 5 5个字符,并且必须以字母开始。宏名中可用的其他字符包括字母、数字和下划线。宏名中不允许出现空
11、格。通常用下划线代表空格。要显示“停止录制”对话框,可用鼠标右键单击工具栏,并选择“停止录制”。只有在录制宏时,“停止录制”工具栏才可用。6)选择“格式”,“单元格”,会显示“单元格格式”对话框,选择“字体”选项卡。7)将字体大小设为1 6,将字体颜色设为红色,单击“确定”按钮。8)单击“停止录制”工具栏按钮,结束宏录制过程。如果“停止录制”工具栏没有显示出来,请选择“工具”、“宏”、“停止录制”。录制完一个宏后,就可以执行它了。1.4 执行宏当执行一个宏时,它按照录制宏时相同的步骤进行操作。要执行一个宏,可按照如下步骤:第1学时 Visual Basic for Application是什么
12、使用3图1-1 “录制新宏”对话框允许你为将要录制的宏取名1)选择单元格B 1。2)选择“工具”、“宏”、“宏”,显示“宏”对话框,如图1-2所示。按下A l t+F 8键也可以显示“宏”对话框。3)选择“B i g F o n t”,选择“执行”,则单元格B 1中的字体变为1 6磅和红色。4)选择单元格C 1和D 1,再次运行宏“B i g F o n t”。尽管最初录制宏时只改变了一个单元格的字体,此时两个单元格的字体都变为 1 6磅和红色。1.5 查看录制的代码当执行希望保存到宏中的步骤时,E x c e l将操作步骤转化为V B A代码。要查看生成的代码,可按照如下步骤:1)选择“工具
13、”、“宏”、“宏”,显示“宏”对话框。2)选择“B i g F o n t”,单击“编辑”,此时会打开 Microsoft Visual Basic编辑器窗口,如图1-3所示。4使用中文Excel 2000编程 2 4学时教程图1-2 “宏”对话框用来选择将要运行或编辑的宏图1-3 Microsoft Vi s u a lB a s i c编辑器用来查看和编辑V B A代码Microsoft Visual Basic编辑器包括几部分组件。在第4学时中,将学习到更多有关Visual Basic组件的知识。现在应该将注意力集中到显示的代码上。显示的代码应该和程序清单1-1相似。程序清单1-1 Bi
14、gFont过程Sub BigFont()BigFont Macro hj 记录的宏 1 9 9 9-11-2 6With Selection.Font.Name=宋体.FontStyle=常规.Size=16.Strikethrough=False.Superscript=False.Subscript=False.OutlineFont=False.Shadow=False.Underline=xlUnderlineStyleNone.ColorIndex=3End Wi t hEnd Sub代码的第一行“Sub BigFont()”表示了宏的起点和名字,接下来的以单引号开头的行为注释行,表
15、示与宏有关的说明,在本例中包括宏的名字、录制时间、录制人。宏实际工作的部分是从“w i t h”开始的。注意单词“S e l e c t i o n”,S e l e c t i o n在V B A中用来表示突出显示的部分,这就是不论选择一个或者多个单元格宏都能正常工作的原因。你可能注意到的另一点是录制的内容比执行的操作要多得多。你仅仅改变了字体的大小和颜色,但是所有的字体信息都从“单元格格式”对话框的“字体”选项卡中录制下来。1.6 编辑录制的代码编辑代码可在Visual Basic编辑器中直接进行。可添加代码行、删除行或者修改行。要做的第一件事是删除录制下来的多余的行,可按照如下步骤:1)
16、突出显示以“.N a m e”开始的行。2)删除该行。不用担心产生的空行,V B A忽略空行。3)继续删除多余的行,直至过程和下面的代码相同:Sub BigFont()BigFont Macro hj 记录的宏 1 9 9 9-11-2 6With Selection.Font.Size=16第1学时 Visual Basic for Application是什么使用5.ColorIndex=3End Wi t hEnd Sub4)关闭Visual Basic编辑器窗口,返回工作簿。5)在单元格E 1中输入“t e s t”。6)选中单元格E 1,运行宏“B i g F o n t”。注意宏运
17、行的结果与删除宏中的多余的代码行之前完全相同。7)选择“工具”、“宏”、“宏”。8)选择“B i g F o n t”,单击“编辑”按钮。9)现在,当运行这个宏时,字体大小设置为 1 6。编辑这个宏将字体大小设置为 2 4。完成后的宏应该和如下代码相似。Sub BigFont()BigFont Macro hj 记录的宏 1 9 9 9-11-2 6With Selection.Font.Size=24.ColorIndex=3End Wi t hEnd Sub1 0)关闭Visual Basic编辑器窗口。11)选中单元格A 1,运行“B i g F o n t”宏。现在该单元格的字体会变得
18、更大。1 2)将工作簿保存为“Hour 1”。现在可以看到编辑录制下来的宏非常简单。需要对宏进行编辑是因为以下两个原因。其一是在录制宏时出错;另一个原因是希望对宏的功能进行改变。不论是因为哪个原因,总是可用Visual Basic编辑器对宏进行编辑。1.7 宏录制器的局限性希望自动化的许多E x c e l的操作过程都可以通过对操作进行录制来完成。但是宏录制器确实具有一定的局限性。通过宏录制器不能完成的工作包括:当宏运行时向用户提示信息。根据用户的输入或者单元格的数值执行不同的操作。相似E x c e l的对话框,例如“另存为”对话框。显示和使用自定义的用户窗体。这些局限性仅仅是需要编写你自己
19、的 V B A代码的原因的一部分。在下一学时中,将更多地使用宏录制器。1.8 学时小结通过本学时,你可以很快地学会使用宏录制器。可学到如何录制、执行和编辑宏,甚至6使用中文Excel 2000编程 2 4学时教程可以修改部分V B A代码。现在你已经为更详细地学习宏环境打下了基础。下一学时的重点是有关宏的高级主题。理解宏“怎么样”和“为什么”是使用 V B A开发应用程序的第一步。1.9 专家答疑问题:用V B A编程为什么需要了解宏录制器?解答:了解宏录制器有两个主要的好处:你掌握的有关宏录制器的知识可以成为学习V B A的基础;此外,当开始开发应用程序时,你会发现,可以先录制尽可能多的宏,
20、然后再对录制下来的代码进行修改。问题:如果我从未编写过程序,学习V B A是否有困难?解答:没有!开始用V B A进行编程只需了解E x c e l。在开发解决方案时将用到在E x c e l方面的知识。本书将提供你需要的所有其他知识。1.10 课外作业思考题和练习题是为了使你能够进一步地理解所学内容。答案请参考附录。1.10.1 思考题1)V B A只能用于E x c e l吗?2)V B A是基于哪种语言?3)判断题:在V B A应用程序中可以使用E x c e l的内置函数。4)对宏代码进行编辑时,工作在。5)列举宏录制器的两个局限性。1.10.2 练习题创建一个新的名为“Ti t l
21、e”的宏,在单元格A 1中输入你的名字,在B 1中输入今天的日期。宏的功能是将A 1和B 1的字体大小设置为1 4磅。录制完成宏后,复习生成的代码。第1学时 Visual Basic for Application是什么使用7第2学时处理录制的宏在第1学时中,重点讲述了录制宏的基础知识。本学时则着重讲述有关宏的高级主题。在本学时中学到的知识将有助于编写 V B A代码。当开始编写V B A过程时,你将用本学时中学到的技术来决定将代码保存到何处,以及如何使用快捷键和按钮来执行过程。本学时的重点包括:为宏指定快捷键 属于宏的位置的作用 创建个人宏工作簿 为宏指定按钮或者图形2.1 指定快捷键新术语
22、你也许希望为经常使用的宏指定快捷键。快捷键是指键的组合,当按下时执行一条命令。你也许对拷贝命令的快捷键 C t r l+C很熟悉,E x c e l允许为宏指定快捷键。快捷键必须是C t r l键和选择的某个字母键的组合。当为宏指定了快捷键后,就可以用快捷键来执行宏,而不用通过“工具”菜单。当包含宏的工作簿打开时,为宏指定的快捷键会覆盖 E x c e l默认的快捷键。这意味着,如果将C t r l+C指定给某个宏,那么C t r l+C不再执行拷贝命令,这可能会让你或者你的用户感到迷惑。在为宏指定快捷键之前,最好打印一张 E x c e l快捷键的程序清单作为参考。要打印 E x c e l
23、快捷键的程序清单可按照如下步骤:1)显示E x c e l在线帮助系统的“目录”选项卡。2)从“使用快捷键”文件夹中选择“快捷键”标题。3)用鼠标右键单击“快捷键”,从菜单中选择“打印”。4)选择“打印所选标题和所有子主题”,单击“确定”按钮。在创建宏时可以指定快捷键,也可以创建完成后再指定。要在创建宏时指定快捷键,可在输入宏的名字后,在“快捷键”文本框中输入相应的键。录制完一个宏后,也可返回为宏指定快捷键。例如,要为B i g F o n t宏指定快捷键,可按照如下步骤:1)如果没有打开“H o u r 1”工作簿,则将它打开。当打开这个工作簿时,可能看到一个消息框,这取决于宏的安全等级。如
24、果出现这个消息框,请选择“启用宏”。2)选择“工具”、“宏”、“宏”,显示“宏”对话框。3)选择“B i g F o n t”,再单击“选项”按钮,显示“宏选项”对话框如图2-1所示。4)输入字母“b”作为快捷键。快捷键必须是C t r l和一个字母键的组合。5)单击“确定”按钮,关闭“宏”对话框。6)在单元格A 3中输入“Te s t”。7)选中单元格A 3,在按下C t r l+B时会执行相应的宏,可以看到该单元格字体的大小和颜色都改变了。如果对E x c e l的快捷键比较熟悉,你应该知道,通常情况下,C t r l+B会将选中的内容以粗体显示。因为你将C t r l+B指定为执行宏的快
25、捷键,所以就覆盖了 E x c e l的内置函数。只要该工作簿打开,这种情况就会一直保持。注意 E x c e l不会试图阻止这样做。你甚至看不到警告信息,E x c e l假设你知道这样做的后果。2.2 决定宏的保存位置当创建第一个宏时,你接收了将该宏存放在默认的位置。总的来说,可将宏存放在三种可能的位置:本工作簿。新的工作簿。个人宏工作簿。如果选择将宏保存在本工作簿中,则宏驻留在当前的工作簿中。这意味着只有当该工作簿打开时,该宏才可用。也可选择将宏保存在新的工作簿中,如果这样选择,会自动创建新的工作簿。最后的选择是将宏保存在个人宏工作簿中。2.3 创建个人宏工作簿新术语个人宏工作簿是为宏保
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EXCEL_VBA 编程 24 学时 教程
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内