2.2 创建宏
与以往版本相比,Excel 2010提供了很多内置的功能使工作变得更灵活。在准备创建宏来重复执行某些命令组合前,最好先检查Excel 2010是否已经提供了相应的内置功能,以减少不必要的工作。
在录制或编写宏之前,应先制订计划,确定宏要执行的步骤和命令。在录制前最好先执行一次,确定每个步骤的详细操作过程,因为如果录制宏时出现失误,改正失误的操作也会被Excel录制到宏中。
2.2.1 显示“开发工具”选项卡
在Excel 2010的默认环境中,“开发工具”选项卡是隐藏的,如果要编写宏、运行以前录制的宏或用VBA创建与Office程序一起使用的应用程序,则需要将“开发工具”选项卡显示出来。可按以下步骤显示“开发工具”选项卡。
步骤1 在Excel操作界面上单击左上角的“文件”选项卡,打开Backstage视图。
步骤2 单击左下方的“选项”菜单项,如图2-1所示,打开“Excel选项”对话框,如图2-2所示。
图2-1 Backstage视图
图2-2 “Excel选项”对话框
步骤3 在图2-2所示的“Excel选项”对话框中单击左侧的“自定义功能区”类别。
步骤4 在“自定义功能区”界面中,选中右侧的“开发工具”复选框,单击“确定”按钮。
步骤5 经过以上步骤,“开发工具”选项卡就添加到功能区中了。单击“开发工具”选项卡将显示“开发工具”功能区,如图2-3所示。
图2-3 “开发工具”功能区
在“开发工具”功能区的“代码”组中,有录制宏及对宏的设置等相关命令按钮。
2.2.2 录制宏
启动宏录制器,并按计划进行一系列操作,即可在Excel中创建宏。在需要重复这一系列操作的时候执行该宏即可。在Excel 2010中可以通过以下两种方法来录制宏。
• 使用Excel状态栏左侧的“录制宏”按钮。
• 使用“开发工具”功能区中的“录制宏”按钮。
下面以实例演示录制宏的过程。在制作表格时,通常需要将表头字体设置得更醒目,本例录制一个宏,设置选中单元格(表头)的字体为“黑体”,字号为“16”,具体操作步骤如下。
步骤1 启动Excel 2010,如果已经打开了Excel 2010,则新建一个工作簿。
步骤2 选取一个单元格(或一个单元格区域)。
技巧:录制宏之前,首先应该考虑是否要将当前单元格的位置录制到宏代码中。如果让宏总是从一个特定的位置开始,就需要在打开宏录制器后再执行本步操作。如果当前单元格的位置无关紧要,则应该先执行本步操作。
步骤3 在“开发工具”功能区的“代码”组中,单击“录制宏”按钮,如图2-4所示。
图2-4 录制宏
技巧:在Excel 2010中,为了能快速启动宏录制器,在状态栏中添加了一个“录制宏”按钮,如图2-5所示。单击该按钮可快速启动宏录制器。
图2-5 “录制宏”按钮
步骤4 在如图2-6所示的“录制新宏”对话框中输入宏名“设置表头格式”。Excel 2010默认会在对话框中自动填写一个宏名,例如“宏1”或“宏2”等。宏名不但可以包含字母、数字和下画线,还可以使用中文,但不能包含空格。
图2-6 “录制新宏”对话框
步骤5 在“快捷键”后面的文本框中输入字母“h”,设置快捷键为“Ctrl+h”。
注意:在宏中定义的快捷键将覆盖任何对等的默认的Excel快捷键。例如将“Ctrl+A”定义为宏的快捷键,则Excel原来定义的“Ctrl+A”全选单元格的功能将失效。
步骤6 在“保存在”下拉列表中选择“当前工作簿”。
技巧:可以将录制的宏保存到三个不同的位置。
• 个人宏工作簿:每次使用Excel时都可以使用“个人宏工作簿”中的宏。在Windows XP中,“个人宏工作簿”保存在“C:\Documents and Settings\用户名\Application\Data\Microsoft\Excel\XLStart”文件夹中,文件名为PERSONAL.XLSB,以便在每次启动Excel时可以自动加载它。在Windows 7中,“个人宏工作簿”保存在“C:\Users\用户名\Application Data\Microsoft\Excel\XLStart”文件夹中。如果想在另一个工作簿中自动运行个人宏工作簿中的宏,还必须将个人宏工作簿保存在“XLStart”文件夹中,以便在启动Excel时同时打开这两个工作簿。
• 新工作簿:将录制的宏保存到一个新工作簿中。
• 当前工作簿:将录制的宏保存在当前使用的工作簿中。
步骤7 在“说明”文本框中输入宏的说明文字。
步骤8 单击“确定”按钮,关闭“录制新宏”对话框并开始录制。此时在“开发工具”功能区的“代码”组中,原来的“录制宏”按钮将变为“停止录制”按钮(状态栏中的“录制宏”按钮也将变为“停止录制”按钮)。
步骤9 接下来开始具体的操作。在“开始”功能区的“字体”组中,从“字体”下拉列表中选择“黑体”;在“字号”下拉列表中选择“16”,单击下方的“粗体”按钮使其变为粗体,如图2-7所示。
图2-7 设置字体格式
步骤10 单击状态栏中的“停止录制”按钮,完成宏的录制;也可在“开发工具”功能区的“代码”组中,单击“停止录制”按钮停止宏的录制。
注意:如果在录制宏时执行了选择单元格的操作,则每次运行该宏时都将选中对应的单元格,因为宏记录的是单元格的绝对引用。如果要让宏选择单元格时不考虑活动单元格的位置,则需要将宏设置为记录单元格相对引用。单击“开发工具”功能区中“代码”组的“使用相对引用”按钮,该按钮将改变为选中状态,这时Excel将按相对引用方式记录宏;再次单击该按钮,又将按绝对引用方式记录宏。在录制宏的过程中可根据需要改变该按钮的状态。
2.2.3 使用Ⅴisual Basic创建宏
按2.2.2节介绍的方法,使用宏录制器可创建按顺序完成的宏操作。在实际使用时,经常需要在宏中循环执行某一部分操作,使用宏录制器来创建这类宏是不可能的。这时就需要使用Visual Basic编辑器(VBE)来创建这类宏了。在VBE中使用VBA代码可完成各种复杂的操作。通过VBE创建宏的操作步骤如下(有关VBA代码的内容将在本书后续章节中详细介绍,这里只介绍操作步骤)。
步骤1 如果“开发工具”选项卡未显示出来,可使用2.2.1节介绍的方法将其显示出来。
步骤2 在“开发工具”功能区的“代码”组中,单击“Visual Basic”按钮,打开如图2-8所示的VBE窗口,VBE窗口的组成和使用将在第3章中进行介绍。
图2-8 VBE窗口
技巧:按“Alt+F11”组合键也可打开VBE。
步骤3 在VBE窗口中输入宏代码,即可完成宏的创建。
技巧:也可先通过宏录制器生成部分宏代码,再通过VBE对生成的代码进行修改。