(本科)第7章 宏与VBA基础ppt课件.pptx
-
资源ID:15609103
资源大小:4.52MB
全文页数:115页
- 资源格式: PPTX
下载积分:40金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
(本科)第7章 宏与VBA基础ppt课件.pptx
课程主讲人:第7章 宏与VBA基础办公软件高级应用版权所有:广州商学院 信息技术与工程学院基础教研室第7章 宏与VBA基础宏的录制与运行Visual Basic编辑器介绍编辑已录制的宏VBA基础Contents Page7.1 宏的录制与运行7.2 Visual Basic编辑器介绍7.3 编辑已录制的宏7.4 VBA基础目 录 页Contents Page7.2 Visual Basic编辑器介绍7.3 编辑已录制的宏7.4 VBA基础目 录 页7.1 宏的录制与运行7.1.1 宏基础宏,其实是保存在Visual Basic模块中的一段VBA程序代码,是可以完成某一特定功能的命令组合。在日常工作中,一些简单的操作,通过录制宏的方式的完成,并自动保存成VBA代码。不过执行宏时需要手工运行,无法根据实际情况自动执行。在支持录制宏的软件(Word和Excel)中,制作宏的方法有两种:(1)宏录制器(2)Visual Basic编辑器7.1.2 录制宏录制宏的具体操作如下:1. 设计宏在录制宏之前,用户必须知道需要录制的宏包含哪些操作以及这些操作的顺序,以确保宏过程正确无误。一般情况下,需要先设计好宏步骤,然后再将操作录制下来。7.1.2 录制宏录制宏的具体操作如下:2. 打开宏录制器要Office软件中显示“开发工具”选项卡,步骤如下: Step01:打开Office软件,切换到“文件”选项卡,单击“选项”命令。Step02:弹出相应软件的选项对话框,切换到“自定义功能区”选项,在右侧的“自定义功能区”下拉列表中选择“主选项卡”,在下方的列表框中勾选“开发工具”复选框,然后单击“确定”按钮即可,如图 7 2所示为Word 2016的选项对话框。7.1.2 录制宏图 7 2“Word选项”对话框7.1.2 录制宏录制宏的具体操作如下:2. 打开宏录制器在支持录制宏的软件(Word和Excel)中,打开宏录制器有三种方法。(1)单击“开发工具”选项卡“代码”组中的“录制宏”按钮,如图 7 1所示。弹出“录制宏”对话框,如图 7 3所示。(2)单击“视图”选项卡“宏”组的“宏”按钮,在下拉列表中选择“录制宏”命令,如图 7 4所示。弹出“录制宏”对话框,如图 7 3所示。(3)单击状态栏中的“录制宏”按钮,如图 7 5所示。弹出“录制宏”对话框,如图 7 3所示。7.1.2 录制宏图 7 3“录制宏”对话框7.1.2 录制宏录制宏的具体操作如下:2. 打开宏录制器在“录制宏”对话框中,宏名默认用“宏1”、“宏2”、“宏3”。用户可以输入自定义的宏名,其中宏名的命名规则如下:l 宏名的首字符必须是汉字或字母,其他字符可以是字母、数字或下划线。l 宏名中允许有空格,可以用下划线作为分词符。l 在Excel中,宏名不允许与单元格引用重名,否则会提示宏已经存在,是否替换原有宏。一般情况下,必须指明宏存放的位置和宏的使用方式。如图 7 3所示,一种方式是将宏指定到“按钮”,另外一种方式是将宏指定到“键盘”。7.1.2 录制宏录制宏的具体操作如下:3.设定宏的运行方式在设定宏的运行方式时,无论在Word还是Excel中都需要按下面的方法来操作。(1)在Word中指定宏的运行方式 在“录制宏”对话框中,单击“按钮”按钮,弹出“Word选项”对话框。 在“Word选项”对话框中,切换到“快速访问工具栏”选项,在左侧的“从下列位置选择命令(C)”下拉列表中选择“宏”,如图 7 6所示。 在右侧的“自定义快速访问工具栏(Q)”下拉列表中选择将宏用于默认的所有文档。选择宏(如“Nomal.NewMacros.宏1”),单击“添加(A)”按钮,然后单击“确定”按钮,即可将宏(如“Nomal.NewMacros.宏1”)命令按钮添加到快速访问工具栏上。7.1.2 录制宏图 7 6指定宏的运行方式7.1.2 录制宏录制宏的具体操作如下:3. 设定宏的运行方式在设定宏的运行方式时,无论在Word还是Excel中都需要按下面的方法来操作。(1)在Word中指定宏的运行方式 还可以将宏指定在自定义的选项卡内,为常用的宏设置快捷按钮。在“Word选项”对话框中,切换到“自定义功能区”选项,在左侧的“从下列位置选择命令(C)”下拉列表中选择“宏”。在右侧的“自定义功能区(B)”下拉列表中选择“主选项卡”,然后单击“新建选项卡(W)”和“新建组(N)”按钮,生成新的选项卡和组。选择“新建组(自定义)”,选择需要设定的宏(如“Nomal.NewMacros.宏1”),单击“添加(A)”按钮,将宏(如“Nomal.NewMacros.宏1”)添加到选项卡中,如图 7 7所示。7.1.2 录制宏图 7 7添加宏到自定义的选项卡7.1.2 录制宏录制宏的具体操作如下:3. 设定宏的运行方式(2)Excel中指宏的运行方式在Excel中录制宏,设定宏的运行方式只需在“录制宏”对话框中指定一组快捷键,如图 7 10所示。如果想将宏命令按钮添加到选项卡或快速访问工具栏,则必须在录制宏完成之后进行添加。需要注意的是,在“快捷键”下的文本框内输入小写字母,如“q”,设置的快捷键才是Ctrl+Q。如果输入的是大写的“Q”,则设置的快捷键是Ctrl+Shift+Q7.1.2 录制宏图 7 10设置快捷键7.1.2 录制宏录制宏的具体操作如下:4. 保存宏(1)在Word中保存宏可以在Word的“录制宏”对话框中设置宏的保存方式,如图 7 3所示。“将宏保存在(S)”下拉列表有两个选项,分别是:l 所有文档(Normal.dotm):将宏保存在Word模板里,可以为其他新建文档使用。l 文档1(文档):指当前文档,宏只能在当前这个文档使用。如果将宏保存在当前文档,由于当前文档可能未启用宏,因此,在保存文档时,会弹出如所图 7 11示的对话框。7.1.2 录制宏图 7 10设置快捷键单击“是”按钮,则将文档保存为未启用宏的文档,那么宏代码就无法自动运行,但是不影响手动执行宏。单击“否”按钮,弹出“另存为”对话框,在“保存类型”下拉列表中选择文档类型为“启用宏的Word文档(*.docm)”,如图 7 12所示。单击“保存”按钮完成文档的保存。7.1.2 录制宏图 7 12选择保存文件的类型7.1.2 录制宏录制宏的具体操作如下:4. 保存宏(2)在Excel中保存宏可以在Excel的“录制宏”对话框中设置宏的保存位置,如图 7 10所示。“保存在(S)”下拉列表有三个选项,分别是:l 当前工作簿:它将宏保存在当前活动工作簿中。l 新工作簿:创建一个新工作簿,将宏保存在该工作簿中。l 个人宏工作簿:把宏和其他自定义内容保存在“个人宏工作簿”中,就能在每次创建Excel文件时都能使用该宏。在选择“个人宏工作簿”时,如果隐藏的个人宏工作簿不存在,需要创建一个新的个人宏工作簿并将宏保存在此工作簿中。最后,单击“确定”,以启动宏录制器。当所有操作完成后,切换“开发工具”选项卡,单击“代码”组中的“停止录制”按钮,如图 7 13所示。7.1.2 录制宏图 7 13“代码”组7.1.3 指定宏的运行方式如果在录制宏的时候未指定宏的运行方式,可以将现有的宏的运行指定到选项卡上,也可以指定到组合键。(1)将宏指定到选项卡快捷按钮(2)将宏指定到组合键7.1.3 指定宏的运行方式图 7 14添加宏到新建选项卡7.1.3 指定宏的运行方式图 7 17“宏选项”对话框7.1.4 运行宏运行宏的操作非常简单,主要有以下两种方法:(1)如果录制宏时指定了运行方式,如前文所述的快速访问工具栏按钮、选项卡快捷按钮、快捷组合键,则按照指定的方式运行即可。(2)如果未指定宏的运行方式,则需要以查看宏的方式执行,具体有以下方法: 切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 18所示。在对话框中选择要执行的宏,单击“运行”按钮。 切换到“视图”选项卡,单击“宏”组中的“宏”按钮,在弹出的列表中选择“查看宏”,弹出“宏”对话框,如图 7 18所示。然后选择要执行的宏,单击“运行”按钮。7.1.4 运行宏图 7 18 Word“宏”对话框7.1.5 在Word中录制宏在Word中录制宏之前,录制者要设计好宏的操作及操作顺序。下面以录制一个设置字符和段落格式的宏命令为例,介绍在Word中录制宏的方法。Step01:打开文档“Word中录制宏_素材.docx”,切换到“开发工具”视图,单击“代码”组中的“录制宏”按钮,弹出“录制宏”对话框,如图 7 1所示。Step02:在“录制宏”对话框中输入宏名“WMacro”,然后单击“按钮”按钮,将宏指定在选项卡上运行,具体设置如图 7 7所示。Step03:选择“将宏保存在(S)”下拉列表的第2项,将宏保存在当前文档中。7.1.5 在Word中录制宏Step04:单击“确定”按钮,开始录制:l 切换到“开始”选项卡,单击“字体”组右下角的启动器按钮,弹出“字体”对话框,设置字体为“黑体”,大小为“四号”,加粗,单击“确定”按钮。l 单击“段落”组右下角的启动器按钮,弹出“段落”对话框,然后单击“特殊格式”下拉列表,选择“首行缩进”,磅值为2个字符;单击“行距”下拉列表,选择“1.5倍行距”,单击“确定”按钮。Step05:切换到“开发工具”选项卡,单击“代码”组中的“停止录制”按钮,完成宏的录制,如图 7 13所示。Step06:选中需要设置格式的段落,按照Step 02设定的运行方式,在选项卡上单击该宏的快捷按钮运行宏“WMacro”,可看到选中段落的格式随即改变,参见文档“Word中录制宏_效果.docx”。7.1.5 在Excel中录制宏在Excel中录制宏,也需要先设计一组操作:打开工作簿“Excel中录制宏_素材.xlsx”,在第一行前插入1行,合并单元格区域A1:D1,设置字体为“隶书”,字形为“加粗”,大小16号,颜色为“深红”,图案样式为“6.25% 灰色”,图案颜色为“浅蓝”。录制宏的具体步骤如下:Step01:打开工作簿“Excel中录制宏_素材.xlsx”,切换到“开发工具”视图,单击“代码”组中的“录制宏”按钮,弹出“录制宏”对话框,如图 7 10所示。Step02:在“录制宏”对话框中输入宏名“EMacro”,然后在“快捷键”文本框中输入“k”。Step03:在“保存在(S)”下拉列表中,选择“当前工作簿”。7.1.6 在Excel中录制宏Step04:单击“确定”按钮,开始录制:Step05:切换到“开发工具”选项卡,单击“代码”组中的“停止录制”按钮,完成宏的录制,类似图 7 13所示。Step06:切换到“成绩表”工作表,按下快捷键Ctrl+K运行宏EMacro,可看到A1单元格的变化,参见工作簿“Excel中录制宏_效果.xlsx”。7.1.7 删除宏不需要的宏可以删除掉,具体操作步骤如下:Step01:切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 18所示。也可以在“视图”选项卡的“宏”组中,单击“宏”按钮,在弹出的列表中选择“查看宏(V)”命令,弹出“宏”对话框。Step02:在“宏名(M)”列表框中选择需要删除的宏,单击“删除”按钮。Step03:在警告提示框内,单击“是”按钮,确认删除宏。Contents Page7.2 Visual Basic编辑器介绍7.3 编辑已录制的宏7.4 VBA基础目 录 页7.1 宏的录制与运行7.2.1 VBE的启动方式打开VBE的方法主要有以下3种:(1)切换到“开发工具”选项卡,单击“代码”组中的“Visual Basic”按钮,即可启动VBE,如图 7 1和图 7 13所示。(2)按下快捷键“Alt+F11”,即可快速启动VBE。(3)在包含宏的文件中,切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 18和图 7 16所示。在“宏名(M)”列表框中选择需要的宏,单击“编辑”按钮,即可启动VBE,并在其中查看所选宏的代码。7.2.2 VBE操作界面图 7 20 VBE窗口7.2.3 关闭VBE关闭VBE,可以通过单击VBE窗口“标题栏”右侧的“关闭”按钮,或者打开“视图”菜单项,单击“关闭并返回到主应用程序”菜单命令。Contents Page7.2 Visual Basic编辑器介绍7.3 编辑已录制的宏7.4 VBA基础目 录 页7.1 宏的录制与运行7.3.1 在VBE中调试宏在VBE中打开一个已录制的宏,对宏代码进行编辑修改,操作步骤如下:Step01:切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 18所示。Step02:在对话框中选择要编辑的宏,单击“编辑”按钮。此时,启动VBE,并显示该宏的代码以便编辑。Step03:按F5键或者单击“标准”工具栏上的“运行子过程/用户窗体”按钮,还可以打开“运行”菜单项,单击“运行子过程/用户窗体”菜单命令,运行该宏。Step04:如果宏出错,VBE会弹出错误提示框,并在代码窗口中显示有错误的语句,进行相应修改即可。7.3.1 在VBE中调试宏下面介绍VBE常用的调试工具的使用方法。1、单步执行在VBE中调试程序时,可以通过按下F8键单步执行程序,即一次执行一条命令,这样就能知道每条命令的操作效果,已发现和确定问题所在。2、设置断点在VBE中,可以在代码中设置断点,断点所在行的代码将以棕色背景高亮显示。当程序运行到断点所在行时,将会暂停执行并停止在断点所在行,进入中断模式,将该行加上黄色背景高亮显示,如图 7 27所示。7.3.1 在VBE中调试宏图 7 27设置断点7.3.1 在VBE中调试宏在VBE中,设置和清除断点的方法有以下几种:(1)在代码窗口中,将光标定位到要设置断点的某行代码中,然后按下F9键,即可设置断点;设置断点后,再次定位到该行,按下F9键,即可清除该行断点。(2)在代码窗口中,将光标定位到要设置断点的某行代码中,然后打开“调试”菜单项,单击“切换断点”菜单命令,即可设置断点。设置断点后,再次定位到该行,执行“调试”“切换断点”命令,即可清除该行断点。(3)在代码窗口中,直接单击代码行左侧的边界条,即可快速设置断点;设置断点后,再次单击该行边界条,即可清除该行断点。如果需要一次性清除代码中的所有断点,可以在VBE窗口中,打开“调试”菜单项,单击“清除所有断点”菜单命令,或者按下“Ctrl+Shift+F9”组合键。7.3.1 在VBE中调试宏3、添加注释在VBA代码中添加注释,以使代码便于阅读和理解,也便于代码的编辑修改。可以用手工方法来添加注释,只需要在该代码行前面输入半角的单引号。添加了注释的代码行会变成浅绿色,VBE在运行程序时不会执行添加了注释的代码行。如果要用手工方法来解除注释,删除注释符即可。图 7 28“编辑”工具栏7.3.1 在VBE中调试宏图 7 29 Debug.Print语句4、使用Debug.Print语句检查值在编写的代码发生错误时,可以使用Debug.Print语句检查变量、表达式的值或对象的属性值。Debug.Print语句的作用是将其后书写的变量、表达式的值或对象的属性值输出到“立即”窗口,如图 7 29所示。当程序运行结束后,就可以在“立即”窗口中查看值的全部变化情况,从而查找代码中可能存在的错误。7.3.2 编辑Word宏这里将前文Word中录制的宏WMacro进行编辑、修改以得到一个新的宏。1、打开WMacro宏Step01:在Word应用程序中,切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 18所示。Step02:在“宏”对话框中选择“WMacro”,单击“编辑”按钮。此时,启动VBE,并显示WMacro宏的代码。参见程序清单 7 1。2、单步执行WMacro宏按下F8键单步执行代码,对WMacro宏进行调试。7.3.2 编辑Word宏3、运行WMacro宏单步执行完WMacro宏,没有发现任何问题或错误,可以通过VBE来运行它。可以按F5键或者单击“标准”工具栏上的“运行子过程/用户窗体”按钮,还可以打开“运行”菜单项,单击“运行子过程/用户窗体”菜单命令,运行该宏。4、创建新的宏NWMacro接下来,以WMacro宏代码为基础,创建一个新的宏NWMacro,实现一些新的功能。具体操作步骤如下:Step01:在代码窗口中,选中WMacro宏的所有代码,右击,在弹出的快捷菜单中选择“复制”命令。7.3.2 编辑Word宏Step02:将插入点定位于WMacro宏的结束语句“End Sub”的下面一行或几行。注意,插入点不允许在其他代码内部。Step03:右击,选择“粘贴”命令,将WMacro宏的所有代码复制一次。Step04:编辑宏的开始语句“Sub WMacro()”,将其修改为“Sub NWMacro()”。于是,宏的名字改为“NWMacro”。Step05:编辑注释行,将宏名修改“NWMacro”。Step06:根据原来的宏代码,对需要改变的功能进行修改、删除或增加。改变字体的颜色为蓝色、添加下划线,字形为华文楷体,改变段落的行距为2倍行距;删除“字体”对话框和“段落”对话框中默认部分对应的无效代码;增加文字阴影效果。参见程序清单 7 2。7.3.2 编辑Word宏5、保存NWMacro宏完成NWMacro宏的调式、运行之后,就可以保存这个宏了。在VBE窗口中,打开“文件”菜单项,单击“保存”菜单命令,或者单击“标准”工具栏上的“保存”按钮,完成NWMacro宏的保存。7.3.3 编辑Excel宏这里将前文Excel中录制的宏EMacro进行编辑、修改以得到一个新的宏。1、打开EMacro宏Step01:在Excel应用程序中,切换到“开发工具”选项卡,单击“代码”组中的“宏”按钮,弹出“宏”对话框,如图 7 16所示。Step02:在“宏”对话框中选择“EMacro”,单击“编辑”按钮。此时,启动VBE,并显示EMacro宏的代码。参见程序清单 7 3。7.3.3 编辑Excel宏2、运行EMacro宏按下F8键单步执行代码,先对EMacro宏进行调试。单步执行完EMacro宏,没有发现任何问题或错误,可以通过VBE来运行它。可以按F5键或者单击“标准”工具栏上的“运行子过程/用户窗体”按钮,还可以打开“运行”菜单项,单击“运行子过程/用户窗体”菜单命令,运行该宏。3、创建新的宏NEMacro接下来,以EMacro宏代码为基础,创建一个新的宏NEMacro,实现一些新的功能。具体操作步骤如下:7.3.3 编辑Excel宏Step01:在代码窗口中,选中EMacro宏的所有代码,右击,在弹出的快捷菜单中选择“复制”命令。Step02:将插入点定位于EMacro宏的结束语句“End Sub”的下面一行或几行。注意,插入点不允许在其他代码内部。Step03:右击,选择“粘贴”命令,将EMacro宏的所有代码复制一次。Step04:编辑宏的开始语句“Sub EMacro()”,将其修改为“Sub NEMacro()”。于是,宏的名字改为“NEMacro”。Step05:编辑注释行,将宏名修改“NEMacro”。Step06:在原来宏代码的基础上,对需要改变的功能进行修改、删除或增加。合并单元格区域A1:E1;改变活动单元格的字体的颜色为蓝色、字号为20;设置活动单元格无边框;删除“设置单元格格式”对话框中“字体”选项卡中默认部分对应的无效代码。参见程序清单 7 4。7.3.3 编辑Excel宏4、保存NEMacro宏完成NEMacro宏的调式、运行之后,就可以保存这个宏了。在VBE窗口中,打开“文件”菜单项,单击“保存”菜单命令,或者单击“标准”工具栏上的“保存”按钮,完成NEMacro宏的保存。Contents Page7.2 Visual Basic编辑器介绍7.3 编辑已录制的宏7.4 VBA基础目 录 页7.1 宏的录制与运行7.4.1 VBA语言基础在编写VBA代码之前,必须掌握它的基本语法规则。下面介绍VBA代码编写的基础知识,包括数据类型、变量、常亮和运算符。1、数据类型数据类型数据类型关键字关键字说明说明类型声明字类型声明字符符整数型整数型Integer用于存储程序中的整数,在内存中占2个字节,其取值范围为-3276832767之间%长整数型长整数型Long存储范围更大的整数,在内存中占4个字节,其取值范围为-21474836482147483647&单精度浮点单精度浮点型型Single存储正负的小数数值,在内存中占4个字节,其中,负数的取值范围为-3.402823E38-1.401298E45,正数的取值范围为1.401298E-453402823E38!双精度浮点双精度浮点型型Double存储正负的小数数值,比单精度浮点型的精度更高,也就是可存储的小数位数更多。其中,负数的取值范围为-1.79769313486231E308-4.94065645841247E-324,正数的取值范围为4.94065645841247E-3241.79769313486232E308#1、数据类型数据类型数据类型关键字关键字说明说明类型声明字类型声明字符符字符串型字符串型String存储若干个字符组成的一个字符序列,这些字符可以是ASCII码范围中的任意一个有效字符,在内存中占1个字节$布尔型布尔型Boolean最简单的数据类型,取值只能是False或True,默认是False。在内存中占2个字节无日期型日期型Date存储日期和时间的数据类型,任何可以辨认的文本日期都可赋值给Date型变量,在内存中占8个字节无货币型货币型Currency是为计算货币而设置的数据类型,通常情况下它是小数位数固定为4位的定点数,在内存中占8个字节字节型字节型Byte通常用来存储二进制文件、图像文件以及声音文件,在内存中占1个字节,范围是0255无1、数据类型数据类型数据类型关键字关键字说明说明类型声明字类型声明字符符对象型对象型Object存储为4个字节的地址形式,为对象的引用无变体型变体型Variant一种特殊的数据类型,所有没有被声明数据类型的变量都默认为变体型,可以表述为上述任何一种数据类型无2、常量和变量(1)常量常量的特点是在程序执行期间总是保持固定值。如果在程序里多次引用某个特定值,就可以将该数值定义为常量。如果以后这个值发生了改变,只简单地在语句里改变这个常量的声明就可以了,而不必改变该值所有使用的地方。常量一般分为以下几种:l数值常量:数值类型的常量称为数值常量,如3.14、2、-16等都是数值常量。l字符及字符串常量:字符数据类型的常量称为字符常量,通常用定界符()表示,如汽车、123、ABC等。l符号常量:在VBA中用符号表示的常量,在程序可多次出现。例如,可以定义符号常量PI,Const PI=3.1415926。2、常量和变量(2)变量变量是指在VBA程序运行过程中可以改变的量。变量的使用包含两层含义:变量名和对变量的赋值。变量名是用户为变量定义的标识符;变量的值表示实际的量,存储在计算机系统中以变量标识符标记的存储位置。在VBA中,变量声明的格式为:Dim 变量名 as 数据类型若在声明变量时,没有指定数据类型,则会自动声明为Variant类型。3、运算符VBA中共有4类运算符,分别是:算术运算符、比较运算符、逻辑运算符、连接运算符。(1)算术运算符运算符运算符名称名称示例示例功能说明功能说明+加法运算符result=num1+num2用于计算两数之和-减法运算符/符号result=num1-num2-num1用作二元运算符时,计算两数之差;用作一元运算符时,说明表达式为负值*乘法运算符result=num1*num2用于计算两数之积/除法运算符result=num1/num2用于计算两个数的除法运算并返回一个浮点数乘方运算符result=num1num2用于指数运算整数除法运算符result=num1num2用于对两个数做除法运算并返回一个整数Mod取余运算符result=num1 Mod num2用于对两个数做除法运算并只返回余数3、运算符(2)比较运算符比较运算符是用来对两个操作数进行比较,是二元运算符,运算结果是Boolean型,即为True或False运算符运算符功能功能语法格式语法格式运算符运算符功能功能语法格式语法格式=等于result=exp1=exp2=小于等于result=exp1=exp2小于result=exp1=大于等于result=exp1=exp2大于result=exp1exp2不等于result=exp1exp23、运算符(3)逻辑运算符逻辑运算符用来执行逻辑运算,结果为Boolean型运算运算符符名称名称示例示例功能说明功能说明And逻辑与result=exp1 And exp2And运算符两边表达式同为真时,结果为True,否则为FalseOr逻辑或result=exp1 Or exp2Or运算符两边表达式至少有一个为真时,结果为True,否则为FalseXor逻辑异或result=exp1 Xor exp2Xor运算符两边表达式同为真或同为假时,结果为False,否则为TrueNot逻辑非result=exp1 Not exp2一元运算符,当表达式的值为真时,结果为False,否则为TrueEqv逻辑相等result=exp1 Eqv exp2Eqv运算符两边表达式值相同时,结果为True,否则为FalseImp逻辑蕴涵result=exp1 Imp exp2当表达式1为真而表达式2为假时,结果为False,否则为True3、运算符运算符运算符示例示例功能说明功能说明+result=exp1 + exp2可连接数据类型同为String的字符串,也可以连接一个表达式为String,另一个表达式为其他数据类型的情况&result=exp1 & exp2将两个表达式作字符串强制连接,如果表达式不是String,则会将其转换成String后再连接(4)连接运算符连接运算符用来合并两个字符串,包括“+”和“&”两种3、运算符(5)运算的优先级在一个表达式中,可能使用多种运算符,每一个运算符都会按照预先确定的顺序进行计算,这称为运算的优先顺序。需要注意的是,逻辑运算符中,以逻辑非运算符“Not”的优先级最高。运算符运算符运算符名称运算符名称优先级优先级指数1-取负2*/乘法和除法3整除4Mod求余5+-加法和减法6&连接运算符7=、=和和=比较运算符8Not、And、Or、Xor、Eqr、Imp逻辑运算符97.4.2 VBA的基本控制结构在VBA中,语句结构有很多种,这里仅简单介绍比较常用的4类控制语句。1、顺序结构1、顺序结构顺序结构没有复杂的逻辑关系,是最简单的一类语句结构。按照语句编写顺序从上到下、逐条语句执行。执行时,排在前面的代码先执行,排在后面的代码后执行,执行过程中没有任何分支。顺序结构是最普遍的结构形式,也是其他语句结构的基础。2、选择结构常用的选择结构有IfThen语句、IfThenElse语句、IfThenElseIfThen语句、Select Case语句等。(1)IfThen语句只对条件为True的情况进行处理,使用IfThen语句。l 单行语法格式为:If Then l 块结构语法格式为:If Then End If功能:当条件表达式的值为True时,执行Then后面的语句,否则不执行If语句。需要注意的是,当使用块结构的IfThen语句时,一定要加上End If语句,否则执行程序时会出现错误。2、选择结构(2)IfThenElse语句l IfThenElse语句的单行语法格式为:If Then Else l IfThenElse语句的块结构法格式为:If ThenElseEnd If功能:当条件表达式的值为True时,执行Then后面的语句1,否则执行Else后面的语句2。2、选择结构(3)IfThenElseIfThen语句IfThenElseIfThen语句的语法格式为:If ThenElseIf ThenElseIf ThenElseEnd If功能:当条件表达式1的值为True时,执行语句块1;否则,当条件表达式2的值为True时,执行语句块2,以此类推。2、选择结构(4)Select Case语句根据条件判断的结果,决定选择执行几组语句中的哪一组,使用Select Case语句更为有效。其语法格式为:Select Case Case Case Case Case Case Else End Select2、选择结构(4)Select Case语句Select Case语句的执行过程是根据“测试表达式”的值,找到第一个与该值相匹配的表达式列表,然后执行其后面的语句块。如果找不到与“测试表达式”的值匹配的表达式列表,并且有Case Else语句,则执行Case Else后面的语句块,否则跳转执行End Select后面的语句。3、循环结构在VBA中,经常使用的循环语句有ForNext循环、WhileWend循环和DoLoop循环。(1)For Next循环对于指定次数的循环可以直接使用ForNext循环,该结构也称为计数循环语句,其语法格式为:For = To Step步长值Exit ForNext 其中,循环变量是一个数值变量。初值、终值和步长值均为数值表达式,也可以为变量。如果语句中没有强行终止循环的语句,则循环会一直从初值循环到终值,然后结束。步长值为正数则表示循环变量的值递增,如果是负数则表示循环变量的值递减。当省略Step时,默认步长值为1。3、循环结构(2)WhileWend循环WhileWend循环语句通常用在指定条件为True时执行一系列重复性操作,其语法格式为:While WendWhileWend循环语句的执行流程是首先判断条件表达式的值是否为True,如果为True则执行循环体,并执行Wend语句,然后再返回While语句对条件表达式的判断。如果条件仍然为True,则重复执行。当条件为False时,则不执行循环体,直接执行Wend语句后面的程序。WhileWend循环语句的条件可以是数值表达式或字符串表达式,其结果为True或False。3、循环结构(3)DoLoop循环当知道在什么条件下执行循环,在什么条件下停止循环,但是不知道循环的次数,可以使用DoLoop循环结构。DoLoop循环语句可以分为Do While和Do Until两种。Do While语句可以理解为“当时,执行”,即当条件成立时执行循环;Do Until语句可以理解为“执行直到”,执行循环直到条件不成立。Do While和Do Until又分别有两种结构。3、循环结构l Do WhileLoop语句Do WhileLoop语句的语法格式为:Do While Exit DoLoop功能:先判断条件表达式的值,当条件表达式的值为True时,继续执行循环体,直到条件表达式的值为False时,跳出循环体。这种结构有可能循环体一次也不执行。3、循环结构l Do UntilLoop语句Do UntilLoop语句的语法格式为:Do Until Exit DoLoop功能:先判断条件表达式的值,当条件表达式的值为False时,继续执行循环体,直到条件表达式的值为True时,跳出循环。这种结构有可能循环体一次也不执行。3、循环结构l DoLoop While语句DoWhile Loop语句的语法格式为:Do Exit DoLoop While 功能:先执行循环体,再判断条件表达式的值,当条件表达式的值为True时,继续执行循环体,直到条件表达式的值为False时,跳出循环体。这种结构至少执行一次循环体一次。3、循环结构l DoLoop Until语句DoUntil Loop语句的语法格式为:Do Exit DoLoop Until 功能:先执行循环体,再判断条件表达式的值,当条件表达式的值为False时,继续执行循环体,直到条件表达式的值为True时,跳出循环。这种结构至少执行一次循环体一次。4、With语句With语句可以为设置同一个对象的不同属性,可以省略对象名称,达到简化代码的目的。其语法格式为:With 对象 .属性1=属性值 .属性2=属性值 .属性3=属性值 .属性n=属性值End With4、With语句使用With语句完成同样功能的程序代码如下:With Selection.Font.NameFarEast = 黑体.Name = 宋体.Size = 14.Bold = True.Underline = wdUnderlineNone.UnderlineColor = wdColorAutomatic.Color = wdColorAutomaticEnd With需要注意的是,在With语句中,属性前都要加上英文输入状态下的“.”,并且一次只能设定一个对象,不能用该语句一个设定多个不同的对象。7.4.3 Sub子过程1、声明Sub子过程要使用Sub子过程,就需要声明Sub子过程,指定过程的名称、作用域、参数等。Sub子过程声明语法格式为:Public/Private Sub 子过程名(参数1,参数2,) 过程体End Sub其中,Public关键字用于声明过程的作用域为公共过程,可以被其他模块调用;Private关键字用于声明过程的作用域为私有过程,只能在本模块内调用,不可以被其他模块使用。如果省略Public/Private,则默认为公共过程。另外,Sub子过程可以带参数,也可以不带参数,以录制宏的方式生成的宏代码就是不带参数的子过程。7.4.3 Sub子过程2、调用Sub子过程在VBA中,调用Sub子过程的方法主要有2种。(1)使用关键字Call可以使用Call语句调用子过程,其语法格式为:Call 子过程名 (参数1,参数2,)如果子过程有参数,需要用“()”括起来;没有参数则可以省略掉“”内的内容。(2)直接输入过程名称调用子过程并不一定要使用Call关键字,还可以直接输入过程名称,其语法格式为:子过程名 参数1,参数2,如果调用子过程时省略了Call关键字,那么也必须省略参数外面的“()”,否则程序会出现错误。7.4.4 对象、属性和方法1、对象VBA中的对象代表应用程序中的元素,是VBA程序处理的内容。Word的任何一个文档、表格、段落、域、书签等都是对象;Excel的任何一个工作簿、工作表、单元格、图表、窗体等都是对象。用户如果要查看VBA对象,可以在VBE窗口中打开“视图”菜单项,然后选择“对象浏览器”菜单命令,打开“对象浏览器”窗口。集合是一组属于同一个类的对象,集合本身也是对象,例如Workbooks集合对象是当前打开的所有Workbook(工作簿)对象的集合。7.4.4 对象、属性和方法1、对象VBA中的对象代表应用程序中的元素,是VBA程序处理的内容。Word的任何一个文档、表格、段落、域、书签等都是对象;Excel的任何一个工作簿、工作表、单元格、图表、窗体等都是对象。用户如果要查看VBA对象,可以在VBE窗口中打开“视图”菜单项,然后选择“对象浏览器”菜单命令,打开“对象浏览器”窗口。集合是一组属于同一个类的对象,集合本身也是对象,例如Workbooks集合对象是当前打开的所有Workbook(工作簿)对象的集合。7.4.4 对象、属性和方法2、属性属性定义了对象的特征,例如名称、颜色、大小、是否可见等,每一个对象都有属性。可以通过修改对象的属性来改变对象的特征,对象的属性值一次只能设定为一个特定的值。在程序中可以使用赋值语句设置对象的属性,其语法格式为:对象.属性=属性值这里需要注意的是,对象和属性之间要用“.”分隔,其中,“.”表示从属关系。例如下面的语句:Workbooks(Sheet1).Name=基本信息表该语句是将工作表对象Sheet1的“Name”属性值设置为“基本信息表”。7.4.4 对象、属性和方法2、属性还可以在程序