在 Excel 中运行宏

在 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”以启动 VBE) (Visual Basic 编辑器。 浏览 项目资源管理器 到包含要运行的宏的模块,然后将其打开。 该模块中的所有宏都将列在右侧窗格中。 通过将光标放置在宏内的任意位置并按 F5 来选择要运行的宏,或者在菜单上转到 “运行>运行宏”。

将宏配置为在打开工作簿时自动运行

创建Workbook_Open事件。

以下示例使用 Open 事件在打开工作簿时运行宏。

打开要添加宏的工作簿或创建新的工作簿。

在 “开发人员 ”选项卡的 “代码 ”组中,选择 “Visual Basic”。

在 “项目资源管理器 ”窗口中,右键单击 ThisWorkbook 对象,然后选择“ 查看代码”。

提示

如果“项目资源管理器”窗口不可见,请在“ 视图 ”菜单上选择“ 项目资源管理器”。

在“代码”窗口上方的 “对象 ”列表中,选择“ 工作簿”。

这会自动为 Open 事件创建一个空过程,如下所示:

专用子Workbook_Open () End Sub

将以下代码行添加到该过程:

专用子Workbook_Open ()

MsgBox 日期

Worksheets (“Sheet1”) .范围 (“A1”) 。值 = 日期

End Sub

切换到 Excel 并将工作簿另存为启用宏的工作簿 (.xlsm) 。

关闭并重新打开工作簿。 再次打开工作簿时,Excel 将运行 Workbook_Open 过程,在消息框中显示今天的日期。

在消息框中选择 “确定” 。

注意

由于运行Workbook_Open过程,Sheet1 上的单元格 A1 也包含日期。

需要更多帮助吗?

你随时可以在 Excel 技术社区 中咨询专家,或在 社区中获取支持。

返回页首

另请参阅

在打开工作簿时自动运行宏

使用宏录制器自动执行任务

录制宏以在启动 Excel 时打开特定的工作簿

在单个工作簿中创建并保存所有宏

保存宏