要自动执行重复性任务,可以使用 Microsoft Excel 中的宏录制器录制宏。 假设日期采用随机格式,而你想要将单个格式应用于所有日期。 宏可以实现此功能。 可以先录制一个用于应用所需格式的宏,然后在需要时重播该宏。
编程语言的子集,随附于大多数 Office 应用程序。 虽然 VBA 可实现自动执行 Office 应用程序内和应用程序间的流程,但如果宏录制器可以完成所需工作,则不必了解 VBA 代码或计算机编程。
请务必记住,录制宏时,宏录制器几乎可以捕获你进行的所有操作。 因此如果操作序列中出现错误,例如单击了一个本不打算单击的按钮,宏录制器会录制该错误操作。 解决方法是重新录制整个操作序列,或修改 VBA 代码本身。 这就是录制内容时最好录制你非常熟悉的流程的原因。 操作序列的录制越流畅,播放时宏的运行就越高效。
宏和 VBA 工具位于“开发工具”选项卡上,由于该选项卡默认是隐藏的,因此第一步是启用选项卡。 有关详细信息,请参阅显示“开发工具”选项卡。
应了解以下几个有关宏的有用事项:
录制用于在 Excel 的一个区域中执行一组任务的宏时,该宏只对该区域内的单元格运行。 因此将额外的行添加到该区域时,该宏不会对新行运行相关流程,只会对区域内的单元格运行。
如果计划录制一个较长的任务流程,请录制多个相对较小的宏,而不是一个较大的宏。
并不是只有 Excel 中的任务才可录制在宏中。 宏过程可以扩展到其他 Office 应用程序,以及支持 Visual Basic Application (VBA) 的任何其他应用程序。 例如,可以录制完成以下操作的宏:首先更新 Excel 中的表格,然后打开 Outlook 将表格以电子邮件的形式发送给某个电子邮件地址。
执行以下步骤可录制宏。
在“开发工具”选项卡上的“代码”组中,单击“录制宏”。-或-按Alt+T+M+R 。
在“宏名”框中,输入宏的名称。 尽可能提高名称的描述性,以便在创建了多个宏后也可以快速找到该宏。
注意: 宏名的第一个字符必须是字母。 后面的字符可以是字母、数字或下划线字符。 宏名中不能有空格,下划线字符可用作单词的分隔符。 如果使用的宏名同时还是单元格引用,则可能会出现错误消息,指示宏名无效。
若要分配用于运行宏的键盘快捷方式,请在 "快捷键" 框中,键入要使用的任意字母(大写或小写)。 最好使用Ctrl + Shift (大写)组合键,因为宏快捷键将替代任何等效的默认 Excel 快捷键,同时包含该宏的工作簿处于打开状态。 例如,如果使用Ctrl + Z (撤消),则将失去在该 Excel 实例中撤消的功能。
在“保存在”列表中,选择保存宏的位置。
通常情况下,将宏保存在此工作簿位置,但如果希望在使用 Excel 时使用宏,请选择 "个人宏工作簿"。 选择“个人宏工作簿”时,Excel 会创建一个隐藏的个人宏工作簿 (Personal.xlsb)(如不存在),并将宏保存在此工作簿中。
在“说明”框中,选择性地键入有关宏用途的简要说明。
虽然“说明”字段是可选的,但建议输入说明。 此外,请尝试输入有意义的说明,包括任何可能会对你或运行该宏的其他用户有用的信息。 创建大量宏后,说明可以帮助你快速确定宏的用途,否则可能只能猜测。
单击“确定”开始录制。
在 Excel 中使用录制的宏在“开发工具”选项卡上,单击“宏”,查看与工作簿关联的宏。 或按Alt + F8。 这会打开“宏”对话框。
警告: 宏不能被撤消。 首次运行录制的宏之前,请确保已保存要运行宏的工作簿,或者最好在工作簿副本上运行,以防不需要的更改。 如果运行了宏,但没有实现所需操作,可以关闭工作簿而不保存。
下面是有关在 Excel 中使用宏的详细信息。
阅读有关宏的可用安全性设置及其含义的具体信息。 |
|
可通过多种不同的方式运行宏,如使用快捷键、图形对象、快速访问工具栏、按钮,甚至是在打开工作簿时运行。 |
|
使用 Visual Basic 编辑器编辑附加到工作簿的宏。 |
|
如果某个工作簿中包含你希望用于别处的 VBA 宏,则可以使用 Microsoft Visual Basic 编辑器,将包含该宏的模块复制到另一个打开的工作簿中。 |
|
将宏指定给对象、形状或图形 |
|
可以将宏指定给图形图标,并将其添加到快速访问工具栏或功能区。 |
|
可以向工作表中的表单和 ActiveX 控件指定宏。 |
|
了解如何启用或禁用 Office 文件中的宏。 |
|
可以在 Visual Basic 编辑器 (VBE) 中使用录制的代码,并添加自己的变量、控件结构和宏录制器无法录制的其他代码。 由于宏录制器几乎会捕获在录制时执行的每个步骤,因此也可以清理宏中任何不必录制的无用代码。 检查录制的代码是一种学习或提高 VBA 编程技能的好方法。
有关修改示例中录制的代码的详细信息,请参阅 Excel 中的 VBA 入门。