可通过多种方式在 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”以启动 Visual Basic 编辑器 (VBE) 。 在 “项目资源管理器”中 浏览到包含要运行的宏的模块并打开它。 该模块中的所有宏都将在右侧窗格中列出。 通过将光标置于宏中的任意位置来选择要运行的宏,然后按 F5,或转到菜单上的 “运行 > 运行宏”。
创建Workbook_Open事件。
以下示例使用 Open 事件在打开工作簿时运行宏。
-
打开要在其中添加宏或创建新工作簿的工作簿。
-
在“ 开发工具 ”选项卡上的“ 代码 ”组中,选择“Visual Basic”。
-
在 “项目资源管理器” 窗口中,右键单击“ ThisWorkbook ”对象,然后选择“查看代码”。
提示: 如果“项目资源管理器”窗口不可见,请在“ 视图 ”菜单上选择“项目资源管理器”。
-
在“代码”窗口上方的 “对象 ”列表中,选择“ 工作簿”。
这会自动为 Open 事件创建一个空过程,例如 this:
Private Sub Workbook_Open () End Sub -
将以下代码行添加到过程:
Private Sub Workbook_Open () MsgBox Date Worksheets (“Sheet1”) 。范围 (“A1”) 。Value = Date End Sub -
切换到 Excel 并将工作簿另存为启用了宏的工作簿 (.xlsm) 。
-
关闭并重新打开工作簿。 再次打开工作簿时,Excel 将运行 Workbook_Open 过程,该过程在消息框中显示今天的日期。
-
在消息框中选择“确定 ”。
注意: Sheet1 上的单元格 A1 还包含运行 Workbook_Open 过程的结果的日期。
需要更多帮助吗?
可随时在 Excel 技术社区中咨询专家或在社区中获取支持。