练习1_Excel宏与VBA语法基础资料_第1页
练习1_Excel宏与VBA语法基础资料_第2页
练习1_Excel宏与VBA语法基础资料_第3页
练习1_Excel宏与VBA语法基础资料_第4页
练习1_Excel宏与VBA语法基础资料_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Excel宏与VBA程序设计实验指导书实验1 Excel宏与VBA语法基础实验目的1. 熟练掌握录制宏、执行宏、加载宏的方法;2. 熟练使用Excel VBA编辑环境,掌握 VBA的编辑工具 VBE的结构和使用;3. 熟练掌握VBA的基础语法和语句,包括对象、属性和方法,运算符的使用,常 用语句和变量的使用。知识要点 1 .宏宏是被存储在Visual Basic模块中的一系列命令和函数。在需要执行宏时,宏可 以立刻被执行,简单地说,宏就是一组动作的组合。宏是Excel能够执行的一系列VBA语句,它是一个指令集合,可以使Excel自动完成用户指定的各项动作组合,而且宏的录制和使用方法相对也比较简

2、单。录制宏命令时,Excel会自动记录并存储用户所执行的一系列菜单命令信息;运行宏命令时,Excel会自动将已录制的命令组合重复执行一次或者回放,从而实现重复操作的自动化。也就是说,宏命令本身就 是一种VBA应用程序,它是存储在VBA模块中的一系列命令和函数的集合。当执行宏命令所对应的任务组合时,Excel会自动启动该 VBA程序模块中的运行程序。在Excel中,宏有以下两种制作方法:录制宏:通过录制的方法把在 Excel中的操作过程以代码的方式记录并保存 下来,即宏的代码可以用录制的方法自动产生;编写宏:在VBE中直接手工输入操作过程的代码。(1) 录制宏:录制宏是用录制的方法形成自动执行的

3、宏,除了直接录制外,也可以 用图形或按钮启动录制;(2) 执行宏:通过宏对话框执行宏、通过图形执行宏、通过窗体按钮执行宏、添加 菜单或工具栏命令执行宏;(3) 加载宏:加载宏来源主要有Excel自带的加载宏、其他来源提供的加载宏、录 制宏制作的加载宏。2. Excel VBA编辑环境VBA是Micriosoft Office 集成办公软件的内置编程语言,又分为Excel VBA 语言、Word VBA 语言以及 PowerPoint VBA 语言,是新一代标准宏语言。它是基于VB发展起来的,VBA继承了 VB很大一部分编程方法。VB中的语法结构、变量声明以及函数的使用等内容,在VBA语言中同样

4、可以正常使用。VB是面向对象编程,Excel VBA则偏重于面向Excel对象,如工作簿、工作表以及单元格等,即Excel VBA是通过用代码编写的命令和过程来操作工作表或单元格等对象,进而在Excel中完成自动化操作的设置。Office提供了 VBA开发界面,称为 VBE窗口界面,在该窗口中用户可以先实 现应用程序的编写。VBE不能单独打开,必须依附于它所支持的应用程序。通过VBE编写的VBA代码,也保存于 VBA代码所服务的 Excel文件中。3. Excel VBA语法基础及代码结构(1)注释、连写和断行注释:可以通过两种方法实现,即使用Rem语句、用单引号();连写:在一行中写几个语句

5、,用“:”来分开不同语句;断行:一个语句分开写成几行,用空白加下划线_”作为断行标记。(2)变量和常量变量用于临时保存数据。程序运行时,变量的值可以改变。变量在使用前,最好进行声明,也就是定义变量的数据类型,这样可以提高程序的可读性和节省存储 空间。通常使用Dim语句来声明变量。 声明语句可以放到过程中,该变量在过程内有效。声明语句若放到模块顶部,则变量在模块中有效。变量用来存储动态信息,静态信息可以用常量表示。要声明常量并设置常量的值,需要使用 Con st语句。常量声明后,不能对它赋予新的值。(3)运算符算术运算符:+、-、*、/ ;比较运算符: 、=、=;逻辑运算符:And、Or、 No

6、t ;IF 判断 1 Then代码1Elseif判断2 Then代码2Elseif判断3 Then代码3Else代码NEnd IF判断语句:IF判断Then代码1Else代码2End IF连接运算符:&、+。(4 )常用语句With语句:设置一个对象的多个属性;With对象.属性1 =属性值.属性2 =属性值.属性N =:属性值End WithSelect Case判断的对象Case (Is)条件 1代码1Case (Is)条件 2 代码2Case (Is)条件 3代码3Case Else代码NEnd Select循环语句For变量=初值To终值Step步长语句Next变量发生错误语句转移On

7、 Error GoTo指定的位置忽略出错的语句On Error Resume Next(5 )过程程序过程程序根据是否有返回值分为子过程程序(不返回值)和函数过程程序(可 以返回值)。子过程程序结构:Sub过程名() 程序代码End Sub(6 )事件程序(Private ) Sub对象名称_事件名称(自变量)程序代码End Sub(7)对象、属性和方法对象:Excel工作簿、工作表、单元格、图表、窗体、按钮等; 属性:对象固定的特征,设置对象属性结构为“对象属性=属性值”;方法:作用于对象上的操作,用方法操作对象语法为:“对象方法 自变量”。三、实验内容及步骤1.录制宏的实例应用(1)自动完

8、成报表累计在图1-1所示的费用表中,要求设置下列3个按钮:“累加”按钮:单击该按钮进行本月累计运算,并在F1单元格中显示“本月数据已累加”。“累加恢复”按钮:单击该按钮自动恢复累加前的数据,并在F1单元格中显示“已恢复到累加前数据”。“清空本月数据”按钮:单击该按钮清空B列中的本月数据,并在 F1单元格中显示“本月数据已清除”。费用表已撕本月累计辦项目1本月累1工賢1000舖费200030DD麴费4000累如恢复250001000200广刼IMM清空本月熾删一400300100側图1-1费用表累加步骤:累加宏的录制和按钮编辑步骤详细说明如下,其它两个按钮宏的录制 和编辑方法相同。 在工作表中通

9、过“窗体”工具栏拖曳出一个按钮,然后再弹出的“指定宏”对 话框中单击“录制”按钮。 在“录制新宏”对话框中,默认宏名,单击“确定”按钮。 开始录制。选取B列中的本月数据进行复制,然后再选取C4单元格。单击标右键,“选择性粘贴”,运算方式为“加”。 在F1单元格中输入“本月数据已累加”,再单击停止录制按钮。 修改按钮显示名称。更改按钮名称为“累加”。(2)自动完成高级筛选C2要求根据如图1-2所示的“明细表”和图 1-3所示的“筛选结果”表中 A1 : 单元格区域的条件,把结果筛选到“筛选结果”表的A4 : G4单元格区域。步骤: 在“筛选结果”表中利用“窗体”工具栏创建一个按钮,在“指定宏”对

10、话框中把宏名修改为“筛选”,然后录制。 由于在按钮编辑状态下,“筛选”命令不可用,所以首先要选取工作表中任意一个单元格,然后执行“高级筛选”命令。 高级筛选完成后,“停止录制”,完成录制过程。 当修改条件区域的内容时单击按钮,便可以得到筛选的结果。ABCDEFG1公司名秣部门性别年龄工资级別实发工喷2 A公司箱售部赵1男2421603九公旬豐2女23215C4乳公司销售部赵7男563馥21505 A 公销售部赵丄女3621505 A公司销售部那男4E215C7 A公司誚售部赵6女4121508验司誚售部种1男3e25209 B公司悄售部孙2女37252111 B公司誚售部丽男33252211验

11、司誚售部种!女39252312 B公司誚售都孙男4C25241? B公司销售部种6女41252514财务部杨1男42252EIE B公司财部痂女43爍252716 A舊司财务部男441嫌252B17眩司财务部女4511级252918 AnJ财务部男461邸253019 B公司财务部女410圾25312C為公fij男43廡253221 B公司财务部女491珮2533n n筛临结果明细表臭J.B .图1-2 明细表文翅1饲翔A侗i232153,閭t 362151跚41215】ftt3?2521t 39肱t 11邂5432仍枷丈452529t 412531t 492533图1-3筛选结果2. Exc

12、el VBA编辑环境在打开Excel后,用Alt+F11,或者单击 VB编辑器按钮打开 VBE , VBE基本结 构如图1-4所示。完成如下练习:(1 )在新工作簿中添加模块1,然后移除并导出此空白模块至桌面,命名为mkl.bas。步骤:插入t模块,或者通过录制宏来插入模块;模块 1,移除模块,并保存。(2)在工作簿Book1中,先隐藏Sheet1,要求通过修改属性窗口的值,使得通过菜单命令中的“取消隐藏”命令无法取消Sheetl工作表的隐藏。步骤:在工程窗口的Book1工程中选取性,选取“ 2-xlSheetVeryHidden ”项。Sheetl 对象,找到 Sheet1 的 Visibl

13、e 属11厂工具菜单栏3 XiciiOiHaf t VisuBasic - Eook 1 Sheet 1 t代叫)(AJ窗口呦毎勿凹IL剽县呃胡軀圍M驰例肘扣工程 -VSiFiojcEzl旦翌一i* 魁 AcrolitrUFIaker CTOFIaktr. -感 TBATTtjt 的kl- Ml crcicft Excel 对象代码窗口Qj Shtl (SKettl)_ al 5h-?-?t? irheetzL工程窗口丫SLeetl. lorksb七V 1苍芋砥厚按分裁1打II 佥代码窗 口 | Jiatf yrtriiatCondj True 汛收卬Qtli ni nc False立即窗口I

14、ScrdllrLreB.1FN亠图 1-4 VBE3. Excel VBA简单程序设计(1) 求和与计数如图1-5所示,要求分别设置两个宏: 运行一个宏,在C2单元格中填入 A 列非空单元格个数(对 A列计数);运行另一个宏,在 D2单元格中填入 A 列非空单元格之和(对 A列求和)。图1-5对A列的计数与求和 步骤: 在VBA工程中插入一个模块,模块1。 在模块1中写入如下子过程。Sub统计QI)IE H = I ThenRufW (*C2*) = Application. WorkEhe&tFimction. C&untA(Range CA: Elself N = 0 ThenRang电(

15、E2) = Application YorkshftetFmctiSm (Jiangs (A:A)EndlfEid SubSub计数)统计1End SubSub求和0统计0End Sub 执行宏计数、宏求和。(2) 多重判断示例判断单元格A1的值,如果小于0,则在B1中输入“小于零”;如果等于 则在B1中输入“等于零”;如果A1的值大于0,则在B1中输入“大于零”ISSffll f then- - *1 s e i f ignj:Sub參重判斷1 0If KsngeCM*) Q ThenRwige (*51*3 . Value = ”天于零” End IfEnd Sb便用讥语句:选取竝单元格作为判断的对象 如果值小于善在刖中输入勺、于零揺如孚佰等于零在現中输入等于零 如果值大于零在班中输入大于零 錯束选取判断Sub彗重判断0Select Casa R

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论