Excel宏 - 配置宏



您可以录制一个宏并将其保存为名为Auto_Open的文件,以便在每次打开包含此宏的工作簿时运行它。

您也可以编写VBA代码来实现相同目的,方法是使用工作簿的Open事件。每次打开工作簿时,Open事件都会在子过程Workbook_Open()中运行代码。

录制Auto_Open宏

您可以按照以下步骤录制Auto_Run宏:

  • 单击功能区上的“视图”选项卡。
  • 单击“宏”。
  • 单击“录制宏”。将出现“录制宏”对话框。
  • 为宏输入名称“Auto_Run”。
  • 输入描述并单击“确定”。
Auto_open
  • 开始录制宏。
  • 停止录制。
  • 将工作簿另存为启用宏的工作簿。
  • 关闭工作簿。
  • 打开工作簿。宏Auto_Run将自动运行。

如果您希望Excel在不运行Auto_Open宏的情况下启动,请在启动Excel时按住SHIFT键。

Auto_Open宏的限制

以下是Auto_Open宏的限制:

  • 如果您在其中保存了Auto_Open宏的工作簿包含工作簿Open事件的代码,则Open事件的代码将覆盖Auto_Open宏中的操作。

  • 当通过使用Open方法的代码打开工作簿时,将忽略Auto_Open宏。

  • Auto_Open宏在任何其他工作簿打开之前运行。因此,如果您录制了希望Excel在默认Book1工作簿或从XLStart文件夹加载的工作簿上执行的操作,则当您重新启动Excel时,Auto_Open宏将失败,因为宏在默认工作簿和启动工作簿打开之前运行。

如果您遇到任何这些限制,则应编写Open事件的代码(如下一节所述),而不是录制Auto_Open宏。

工作簿Open事件的VBA代码

您可以编写在打开工作簿时执行的代码。VBA提供了一个名为open的事件,该事件包含一个VBA过程,用于在打开工作簿时执行的操作。

打开您存储为绝对引用而编写的宏的工作簿 - Report_ProjectXYZ。当运行此宏时,将在工作簿中添加一个新的工作表,并且项目报告结构将显示在新工作表上。

您可以编写一个宏代码,以便在打开工作簿时执行这些操作。这意味着当您打开“项目报告”工作簿时,一个包含报告结构的新工作表将准备就绪,以便您输入详细信息。

在VBA编辑器中按照以下步骤操作:

  • 双击“项目资源管理器”中的“ThisWorkbook”。

  • 在代码窗口中,在左侧下拉列表中选择“Workbook”,在右侧下拉列表中选择“Open”。将显示Sub Workbook_Open()。

Workbook_open
  • 单击“项目资源管理器”中的“模块”。

  • 双击包含宏代码的模块名称。

  • 从模块中复制宏代码并将其粘贴到Sub WorkBook_Open()中。

Sub Workbook_open

保存启用宏的工作簿。再次打开它。宏将运行,并插入一个包含报告结构的新工作表。

广告