Excel宏定义

什么是Excel中的宏以及何时使用?

Excel宏是一组存储在所谓的VBA代码中的编程指令,可用于消除重复执行常规任务的步骤的需要。

这些重复的任务可能涉及需要使用公式的复杂计算,或者可能是简单的格式化任务 - 例如向新数据添加数字格式或应用单元格和工作表格式(如边框和阴影)。

其他可用于保存宏的重复任务包括:

触发宏

可以通过键盘快捷键,工具栏图标或添加到工作表的按钮或图标来触发宏。

宏与模板

虽然使用宏可以为重复性任务节省大量时间,但如果您经常将某些格式化功能或内容(例如标题或公司徽标)添加到新工作表中,最好创建并保存包含所有这些项目的模板文件而不是每次开始新工作表时重新创建它们。

宏和VBA

如前所述,在Excel中,宏是用Visual Basic for Applications(VBA)编写的。 使用VBA编写的宏是在VBA编辑器窗口中完成的,可以通过单击功能区的开发人员选项卡上的Visual Basic图标打开该窗口(如果需要,请参阅下面有关将开发人员选项卡添加到功能区的说明)。

Excel的宏录像机

对于那些不能编写VBA代码的人来说,它有一个内置的宏记录器 ,允许您使用键盘和鼠标记录一系列步骤,然后Excel将其转换为VBA代码。

像上面提到的VBA编辑器一样,宏记录器位于功能区的开发人员选项卡上。

添加开发人员选项卡

默认情况下,Excel中的“ 开发人员”选项卡不存在于功能区上。 要添加它:

  1. 单击文件选项卡以打开选项的下拉列表
  2. 在下拉列表中,单击选项打开Excel选项 对话框
  3. 在对话框的左侧面板中,单击自定义功能区以打开自定义功能区窗口
  4. 在右侧窗口的主选项卡部分下,单击开发人员旁边的复选框将此选项卡添加到功能区
  5. 单击确定关闭对话框并返回到工作表。

开发人员现在应该在场 - 通常在功能区的右侧

使用宏录像机

如前所述,宏记录器简化了创建宏的任务 - 即使有时候,对于那些可以编写VBA代码的人来说也是如此,但在开始使用此工具之前,有几点需要注意。

1.计划宏

使用宏录像机录制宏需要一些学习曲线。 为了简化流程,请提前进行规划 - 甚至要写出宏指令要执行的内容以及完成任务所需的步骤。

2.保持宏小而具体

就其执行的任务数量而言,宏是越大越复杂,它可能会计划并成功记录它。

更大的宏也运行得更慢 - 特别是那些涉及大型工作表中大量计算的宏 - 并且如果第一次不能正确工作,则更难调试和更正。

通过保持宏小和特定的目的,更容易验证结果的准确性,并且如果事情没有按计划进行,就会发现它们出错的地方。

3.适当地命名宏

Excel中的宏名称有几个必须遵守的命名限制。 首要的是宏名必须以字母表的字母开头。 后续字符可以是数字,但宏名称不能包含空格,符号或标点符号。

宏名称也不能包含VBA作为其编程语言(如IfGoToNewSelect)一部分使用的许多保留字中的任何一个。

尽管宏名称的长度最多可达255个字符,但很少有必要或不宜使用名称中的多个字符。

首先,如果你有很多的宏,并且你打算从宏对话框中运行它们,那么长名称只会导致拥塞,从而难以挑选出你之后的宏。

更好的方法是保持名称简短,并利用描述区域来详细说明每个宏的功能。

名称下划线与内部资本化

由于宏名称不能包含空格,因此允许使用一个字符,并且使读取宏名称更轻松,这是可以在单词之间使用的下划线字符,以代替空格 - 例如Change_cell_color或Addition_formula。

另一种选择是使用内部大小写(有时称为骆驼案例 ),它以大写字母的名称开头每个新单词 - 如ChangeCellColor和AdditionFormula。

在宏对话框中更容易选择较短的宏名称,尤其是在工作表包含多个宏并且记录了很多宏时,因此您可以在宏中轻松识别它们。 该系统还提供了一个描述字段,但不是每个人都使用它。

4.使用相对与绝对单元格引用

单元格引用 (如B17或AA345)标识工作表中每个单元格的位置。

默认情况下,在宏记录器中,所有单元格引用都是绝对的 ,这意味着确切的单元格位置被记录到宏中。 或者,可以将宏设置为使用相对 单元格引用 ,这些引用表示移动(您移动单元格光标向左或向右移动了多少列),而不是精确位置。

你使用哪一个取决于宏设置完成的内容。 如果您想重复执行相同的步骤(例如格式化数据列),但每次在工作表中格式化不同的列时,则使用相对引用都是适当的。

另一方面,如果您想格式化相同范围的单元格(例如A1到M23),但是在不同的工作表上,则可以使用绝对单元格引用,以便每次运行宏时,其第一步是移动单元格光标到单元格A1。

通过单击功能区的“开发人员”选项卡上的“ 使用相对引用”图标轻松完成将单元格引用从相对于绝对更改。

5.使用键盘键与鼠标

在移动单元格光标或选择单元格区域时,使用宏键录制键盘按键通常优于将鼠标移动记录为宏的一部分。

使用键盘组合键(例如Ctrl + End或Ctrl + Shift +右箭头键)将单元格光标移动到数据区域的边缘(包含当前工作表上的数据的单元格),而不是反复按箭头或制表符移动多个列或行的按键简化了使用键盘的过程。

即使应用命令或使用键盘快捷键选择功能区选项,也优于使用鼠标。