可通过多种方式在 Microsoft Excel 中运行宏。 宏是可用于自动执行任务的一个操作或一组操作。 宏以Visual Basic for Applications编程语言记录。 始终可以通过在功能区上的“开发工具”选项卡上选择“宏”命令来运行宏。 根据为宏分配运行的方式,还可以通过按组合快捷键、选择快速访问工具栏或功能区上的自定义组中的按钮,或者选择对象、图形或控件来运行宏。 此外,每当打开工作簿时,都可以自动运行宏。
运行宏之前
在开始处理宏之前,应启用“ 开发工具 ”选项卡。
- 对于 Windows,请转到“文件>选项自定义功能区”>,然后在“自定义功能区”部分的“主选项卡”下,检查“开发人员检查”框,然后按“确定”。
- 对于 Mac,请转到 Excel>首选项...>功能区 & 工具栏,然后在“自定义功能区”部分的“主选项卡”下,检查“开发人员检查”框,然后按“确定”。
从“开发工具”选项卡运行宏
打开包含宏的工作簿。
在“ 开发工具 ”选项卡上,选择“ 宏”。
在“ 宏名称 ”框中,选择要运行的宏,然后按“ 运行 ”按钮。
你还可以选择其他选项:
- 选项 - 添加快捷键或宏说明。
- 单步 执行或 单步执行 - 这将打开 Visual Basic 编辑器到宏的第一行。 按 F8 可让你一次单步执行宏代码。
- 编辑 - 这将打开 Visual Basic 编辑器,并允许根据需要编辑宏代码。 进行更改后,可以按 F5 从编辑器运行宏。
按组合快捷键运行宏
录制宏时,可以向其添加组合快捷键,还可以将组合快捷键添加到现有宏:
在“ 开发工具 ”选项卡上,选择“ 宏”。
在“ 宏名称 ”框中,选择要分配给组合快捷键的宏。
选择“选项”。
此时会显示“ 宏选项 ”对话框。在 “快捷键 ”框中,键入要用于快捷键的任何小写字母或大写字母。
注意
- 对于 Windows,小写字母的快捷键为 Ctrl+字母。 对于大写字母,它为 Ctrl+Shift+字母。
- 对于 Mac,小写字母的快捷键为 Option+Command+字母,但 Ctrl+字母 也将正常工作。 对于大写字母,它为 Ctrl+Shift+字母。
- 请谨慎分配快捷键,因为在包含宏的工作簿处于打开状态时,这些快捷键将覆盖任何等效的默认 Excel 快捷键。 例如,如果将宏分配给 Ctrl+z,将失去 撤消功能。 因此,通常最好改用 Ctrl+Shift+大写字母 ,例如 Ctrl+Shift+Z,这在 Excel 中没有等效的快捷方式。
有关已在 Excel 中分配的 Ctrl 组合快捷键的列表,请参阅 Excel 快捷方式和功能键一文。
在“ 说明 ”框中,键入宏的说明。
选择 “确定” 保存更改,然后选择“ 取消 ”以关闭“ 宏 ”对话框。
通过选择快速访问工具栏上的按钮来运行宏
若要从快速访问工具栏上的按钮运行宏,必须先将按钮添加到工具栏。 为此,请参阅 将宏分配给按钮。
通过在功能区上的自定义组中选择按钮来运行宏
可以创建显示在功能区中的选项卡上的自定义组,然后将宏分配给该组中的按钮。 例如,可以将名为“我的宏”的自定义组添加到“ 开发工具 ”选项卡,然后将显示为按钮的宏 (添加到新组) 。 为此,请参阅 将宏分配给按钮。
通过选择图形对象上的区域来运行宏
可以在图形上创建热点,用户可以单击该热点以运行宏。
在工作表中,插入图形对象(如图片)或绘制形状。 常见方案是绘制圆角矩形形状,并设置其格式,使其看起来像按钮。
若要了解如何插入图形对象,请参阅 添加、更改或删除形状。右键单击创建的热点,然后选择“ 分配宏”。
执行下列操作之一:
若要将现有宏分配给图形对象,请双击该宏或在“宏名称”框中输入其 名称 。
若要录制要分配给所选图形对象的新宏,请选择“ 记录宏”,在“ 记录宏 ”对话框中键入宏的名称,然后选择“ 确定” 开始录制宏。 录制完宏后,选择“代码”组中“开发工具”选项卡上的“停止录制
。提示
还可以选择状态栏左侧的“ 停止录制
。若要编辑现有宏,请在“ 宏名称 ”框中选择宏的名称,然后选择“ 编辑”。
选择“确定”。
从 Visual Basic 编辑器 (VBE) 运行宏
在“ 开发工具 ”选项卡上,选择“Visual Basic”以启动 Visual Basic 编辑器 (VBE) 。 在 “项目资源管理器”中 浏览到包含要运行的宏的模块并打开它。 该模块中的所有宏都将在右侧窗格中列出。 选择要运行的宏,通过将光标放在宏中的任意位置,然后按 F5,或者在菜单上转到 “运行>宏”。
将宏配置为在打开工作簿时自动运行
创建Workbook_Open事件。
以下示例使用 Open 事件在打开工作簿时运行宏。
打开要在其中添加宏或创建新工作簿的工作簿。
在“ 开发工具 ”选项卡上的“ 代码 ”组中,选择“ Visual Basic”。
在 “项目资源管理器” 窗口中,右键单击“ ThisWorkbook ”对象,然后选择“ 查看代码”。
提示
如果“项目资源管理器”窗口不可见,请在“ 视图 ”菜单上选择“ 项目资源管理器”。
在“代码”窗口上方的 “对象 ”列表中,选择“ 工作簿”。
这会自动为 Open 事件创建一个空过程,例如:专用子Workbook_Open ()
End Sub将以下代码行添加到过程:
专用子Workbook_Open ()
MsgBox 日期
工作表 (“Sheet1”) 。范围 (“A1”) 。值 = Date
End Sub切换到 Excel 并将工作簿另存为启用了宏的工作簿 (.xlsm) 。
关闭并重新打开工作簿。 再次打开工作簿时,Excel 将运行 Workbook_Open 过程,该过程在消息框中显示今天的日期。
在消息框中选择 “确定 ”。
注意
Sheet1 上的单元格 A1 还包含运行 Workbook_Open 过程的结果的日期。
需要更多帮助吗?
你随时可以在 Excel 技术社区 中咨询专家或在 社区中获取支持。