image

很多时候,我们希望在工作簿打开或关闭时执行一些预定义的重复性步骤。例如,打开与数据库的连接,刷新工作簿中的数据透视表或只是向用户打招呼。可以使用“ link:/ events-in-vba-workbook-events-using-vba-in-microsoft-excel [Excel的工作簿事件]”来完成。

在本文中,我们将学习如何以最简单的方式在工作簿打开和关闭时运行宏。 ===在打开工作簿时自动运行宏要在打开工作簿时运行宏,我们将使用工作簿事件Workbook_Open。此事件的语法是this。

Private Sub Workbook_Open()

'Your Code here.

End Sub

要在工作簿事件中编写,请执行此操作。

使用Alt + F11打开VBE。现在,在项目资源管理器中,找到要在其中包含代码的工作簿。现在,在项目浏览器中找到ThisWorkbook *对象。双击它。

image

现在您可以看到两个位于编码区域上方的下拉菜单。单击第一个,然后选择工作簿。现在,与工作簿相关的所有可用事件都可以在右侧的下拉列表中看到。单击它,然后选择打开。这将在编码区域上写入一个伪或空的workbook_open子例程。

您要在工作簿打开时运行的所有代码都需要在此处编写。在这种情况下,您可以简单地调用在任何模块中编写的子例程。此代码将触发事件以运行这两行之间编写的任何内容。

示例:

让我们使用Workbook_Open事件来验证用户并在工作簿打开时向该用户打招呼。

Private Sub Workbook_Open()ps = 12345

pw = InputBox("Please enter the password.") + 0

If pw = ps Then

MsgBox ("Welcome Sir!")

Else

MsgBox ("Goodbye")

ThisWorkbook.Close

End If

End Sub

image

保存工作簿并运行一次代码。关闭工作簿。现在尝试打开它。该代码将在工作簿打开后立即运行。

image

您可以在此代码中放入任何内容。我们甚至可以从工作簿中的任何模块调用任何子例程。

Private Sub Workbook_Open()

Call SplitWorkbook ' calling subroutine that splits workbook

End Sub

是的,就是这样。在工作簿打开时自动运行宏非常简单。您可以使用它来自动刷新数据,数据透视表和图表。我希望我的文字足以说明问题,并且该网站对您有帮助。如果这样做没有帮助,请在下面的评论部分中编写查询。我会尽快答复。

相关文章:

在Microsoft Excel中使用VBA的工作簿事件:在这里,您可以找到所有可触发以运行特定代码的工作簿事件在特定事件上。

在进行任何更改时使用工作表更改事件运行宏因此,为了在工作表更新时运行宏,我们使用VBA的工作表事件。

如果在指定范围内对表进行了任何更改,则运行宏 |若要在指定范围内的值更改时运行宏代码,请使用此VBA代码。它检测到在指定范围内所做的任何更改,并将触发该事件。

使用突出显示当前行和列的最简单VBA代码使用此VBA小片段突出显示工作表的当前行和列。

热门文章:

50 Excel快捷方式以提高生产率更快地完成任务。这50个快捷键将使您在Excel上的工作更加快捷。

Excel中的VLOOKUP函数在Excel 2016中为COUNTIF使用此惊人的功能对条件进行计数。您无需过滤数据即可计算特定值。

Countif功能对于准备仪表板至关重要。

如何在Excel中使用SUMIF函数这是仪表板的另一个重要功能。这可以帮助您汇总特定条件下的值。