《练习1-Excel宏与VBA语法基础.docx》由会员分享,可在线阅读,更多相关《练习1-Excel宏与VBA语法基础.docx(8页珍藏版)》请在优知文库上搜索。
1、实验1EXCe1.宏与VBA语法根底一、实险目的I.熟练掌维录制宏、执行宏、加我宓的方法;2,熟练使用Exce1.VBA编辑环境,拿握VBA的端辑工具VBE的结构和使用:3,熟练掌握VBA的根候语法和语句,包括财象,属性和方法.运算符的使用,常用语句和变贵的租用.二、知板要点1,宏宏是被存谛在ViSUa1.BaSiC模块中的一系列命令和函数.在需要执行宏时,宏可以立刻被执行,简地地说,宏就是一组动作的组合.宏是Exce1.能膨执行的一系列VBA语句,它是一个指令集合,可以使EXCeI自动完成用户指定的各项动作祖台,而且宏的录制和使用方法相对也比拟简单。录制宏命令时,EXCd会自动记泵并存储用户
2、所执行的一系列菜单命令片息:送行索命令时.EXCd会自动将已录制的命令组合过史执行一次或者【可放,从而实现狙复操作的自动化,也就是说.宏命令本身就是种VB-X应用程序,它是存储在VBA模块中的一系列命令和函数的集合。当执行宏命令所时应的任务组合时,Exce1.会自动启动该VBA程序模块中的运行程序.在EXCC1.中,宏有以下两种制作方法:录制宏:通过录制的方法把在EXCeI中的操作过程以代码的方式记录并保存下来,即宏的代码可以用录制的方法自动产生:一写宏1在VBE中直接手匚输入操作过程的代码.(I)录制宏:录制宏是用录制的方法形成自动执行的宏,除了直接录制外,也可以用图形或按钮启动录制;执行宏
3、:通过宏对话框执行宏、通过图形执行宏、通过窗体按钮执行宏、添加菜单或工具栏命令执行医:(3)加我宏:加敦宏来源主要有EXCCI自带的加坡宏、其他来源提供的加领宏、录制宏制作的加就宏.2. EXCC1.VBA辑环境VBA是MicriosoftOffice集成办公软件的内置箱程谱古.又分为Exce1.VBA语古、WordVBA语古以及PCWCrPoin1.VBA语言,是新一代标准宏语吉.它是基于VB开展起来的,VBA继承了VB很大局部编程方法,VB中的语法结构、W声明以及函数的使用等内容,在VBA语言中同样可以正常使用。VB是面向对象程,EXCdvBA那么偏重于面向EXCd对象.如工作簿、工作表以
4、及单元格等.即Exce1.VBA是通过用代码编写的命令和过程来操作工作表或单元格等对象,进而在Exce1.中完成自动化操作的设祝。OffiCC提供了VBA开发界面,称为VBE窗口界面,在该窗口中用户可以先实现应用程序的编写.VHE不能单独朝开必须依附于它所支持的应用程芹.通过VBE桀写的VBA代码,也保存于VBA代码所效劳的Exce1.文件中,3. Exce1.VBA语法根底及代码结构(I)注释、连写和阍行注择:可以通过两种方法实现,即使用RCm语句、用单引号():连写;在一行中写几个语句,用“;”来分开不同语句:断行:一个语句分开写成几行,用空白加下划城“一”作为断行标记.(2)变量和常量变
5、收用于临时保存数据.程序运行时,变J让的值可以改变,变破在使用前,Ai好进行声明,也就是定义变他的数据类型,这样可以提高程序的可读性和节省存储空间.通常使用Dim语句来声明变fit.声明语句可以放到过程中,该变fit在过程内有效.声明语句假设放到模块顶部,那么变量在模块中有效。变量用来存储动态信息,解态信息可以用常量表示.要声明常量并设世常量的伯,需要使用COnM语句常IIt声明后,不能对它赋予新的值,运算符 算术运算符:+、-、“、/: 比拟运算符:、=、=: 送卷运算符:And、Or.Not; 连接运笄符:&、+。(4)常用语句With语句:设Ja一个对W的多个属性:With对歙.闽性I=
6、典性!自.赫性2=典性!自.M性N=M性(ftEndWith判断语句:IF判断Then代码1E1.sc代码2End1.FSdyCase判断的对象Case(Is)条件1代码ICase(Is)条件2代码2Case(Is)条件3代码3CaseE1.se代码NIF判断1Then代码1E1.scif判断2Thcn代码2E1.seif判断3Then代码3E1.se代码NEndIPr-J循环语句For变量=初值Tb终值Step步长语句Ncxt变量发生错误语句转移IOnErrOrGoTO指定的位附.忽略出错的语句OnErrOrReSUmeNext(5)过程程序过程程序根据是否有返回值分为子过程程序(不返回值)
7、和函数过程程序(可以写网值).一过程程序&J:Sub过程名()程序代码EndSub(6)事件程序(Private)Sub对一名称_事件名称(自变景)程序代码EndSub(7)对象、属性和方法对象:EXCd工作糊、工作表、单元格、图表、窗体、按钮等:属性:对象固定的特征.设置对象属性结构为“对象属性=属性战”:方法:作用于对象上的操作,用方法操作对象诏法为:“对象.方法自变灵”.三、实殴内容及步1. 景加宏的实例应用(I)自动完成报农累计在图I-I所示的也用表中,要求设附以下3个按钮:“累加”按科一击该按钮进行本月累计运算,并在F1.单元格中显示“本月数据已跟加”.“累加恢复”按fi1.:单击该
8、按钮自动核复累加前的数据,并在FI单元格中显示“已恢其到米加的数据“清空本月数据”按钮:单击该按钮清空B列中的本月数据,并在F1.单元格中显示“本月数据已去除”.费用表己曲朝册?加图1-1费用表累加步骤:累加宏的录制和按钮编辑步骤详细说明如下,其它两个按钮宏的录制和维料方法相同. 在工作表中通过“窗体”工具栏拖戈出一个按钮,然后再弹出的“指定宏”对话框中单击“录制”按钮. 在“录制新宏”对话框中,默认宏名,单击“确定”按钮, 开始录制。选取B列中的本月数据迸行期制,然后再选取C4单元格-单击反标右键,“选择性粘贴”,运算方式为“加”。在FI单元格中输入“本月数据已累加,内单击停止录制按钮.修改
9、按钮显示名称.更也按钮名熟为“累加(2)自动完成高级筛选要求根据如图1-2所示的“明细表”和图1-3所示的“筛选结果”表中A1.C2单元格区域的条件,把结果筛选到“筛选结果”表的A4:G4单元格区域.步骤:在“第选结果”表中利用“窗体”工具栏创立一个按钮,在“指定宏”对话框中把宏名修改为“繇选”.然后录制.由于在按钮编辑状态下,筛选”命令不可用,所以首先要选取工作表中任意一个单元格,然后执行“而级筛选命令。高级筛选完成后,“停止录制”,完成录制过程.当修改条件区域的内容时单击按钮,便可以得到筛选的结果.1公司名称_姓名性别在静工笠级现,工发工2A公司相等部赵】男24Iffi21503一A公司销
10、售部於女23逆21504A公司销集部都男56邀21505A公司销售部协女36邀21506jA公司销港部赵5455级21507A公司钠咨部赵6女41般21508jB公R销售部剂三36段25209;脍司销售部我文37般252110B公司铺住都加鼻38魂2522H豚司销餐部科4女395级252312淞司销督部秒5tP-40HR252413/司WSP孙6女412525HA公司财务部标I男42sa252615B公司财务部际女43沏252716A公笥财务部椅;44I邀252817B公司财务部杨:女45252918A公司财务部546253019B公K财务部桶647IOR253!20A公司财务部W481;级2
11、53221B公F鸣务部杨S女4915K2533力M4HJi5Jf1.细表上D图1-2明细表悯滞慢-F戈静I悯端酊烧刿舞三ra嘏修切?3颂215)A演瘴加攵35呦2I5J就府翔攵1瀛2153前阳加J1.嵬2521E筑捌租39谏2523EM修如41通252i前镇极姒2521E须诲以攵(5:腰252?&刚机(1阅2531EM掇改演酚图1.3筛选结果2. EXCe1.VBA归境在翻开EXed后,HIA1.1.+F1.1.或者单击VB升辑器按钮翻开VBE,VBE根本结构如图IT所示.完成如下练习:(I)在新工作簿中添加模块I,然后移除并导出此空白模块至桌面,命名为ink1.basc步躲:插入一模块,或者
12、通过录制宏来插入模块:模块I.移除模块,并保存.(2)在工作簿BoOkI中,先隐藏ShCCt1,要求通过修改属性窗口的惊,使得通过菜单命令中的“取消隐藏”命令无法取消Sheet1工作表的盼破,步骤:在工程窗口的BOOk1.工程中选取SheCt1.对象,找到ShCCtI的ViSibIC属性,选取“2-x1.ShCCtVCryHiUdcn”顶,图1-4VBE3. EXCe1.VBA简单程序设计求和与计数如图1-5所示,要求分别设置两个宏:运行一个宏,在C2单元格中填入列非空单元格个数(而A列计数);运行另个宏,在D2单元格中填入步骤;在VBA工程中插入一个模块,模块I。在模块I中写入如下子过程.S
13、Ub统计ODIfN=IThenRne(rC2,)=App1.icfttion.VorkshetFunction.Coun1.Ange(,A:A,)EIzIfN=OThenRange(rD2,)=App1.ication.YorksheIFunction.Sunaa4(rA:A*)EadIfEndSubSub计数O统计1EndSubSub求和()统计0EndSub执行宏计数、宏求和。(2)多重判断例如判断维元格A1.的值.如果小于0,那么在川中输入“小于零”:如果等于0,那么在BI中输入“等于零”:如果AI的值大于0,那么在B1.中输入“大于零”SUb多重类物1OIfR皿e(A1.)0Then初拿零豕为F于于作J-等大格警F家7奉7.断元攵于哈初判中小输等也大A1.值中值14佰14选瞬露蠢蠢R皿NrB