📜  Excel宏-配置宏

📅  最后修改于: 2020-12-01 05:40:27             🧑  作者: Mango


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

您也可以出于工作目的的Open事件而编写VBA代码。每次打开工作簿时,Open事件都会在子过程Workbook_Open()中运行代码。

记录一个自动打开宏

您可以记录一个Auto_Run宏,如下所示:

  • 单击功能区上的“查看”选项卡。
  • 单击宏。
  • 单击记录宏。出现录制宏对话框。
  • 键入Auto_Run作为宏名称。
  • 键入描述,然后单击确定。

自动开启

  • 开始录制宏。
  • 停止录音。
  • 将工作簿另存为启用宏的工作簿。
  • 关闭工作簿。
  • 打开工作簿。宏Auto_Run将自动运行。

如果要在不运行Auto_Open宏的情况下启动Excel,请在启动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宏。

工作簿公开事件的VBA代码

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

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

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

在VBA编辑器中遵循以下给定步骤-

  • 在Projects Explorer中双击ThisWorkbook。

  • 在代码窗口中,在左侧下拉列表中选择“工作簿”,在右侧下拉列表中选择“打开”。出现Sub Workbook_Open()。

工作簿打开

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

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

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

子工作簿_打开

保存启用宏的工作簿。再次打开它。宏运行,并插入具有报表结构的新工作表。