Excel VBA:更改为另一个工作表时调用子

时间:2019-01-22 14:28:17

标签: excel vba

相当基本的问题。我正在寻找一个当用户将活动工作表更改为特定工作表(称为工作表3)时将触发的子程序。

不幸的是,在互联网上进行一些研究无法帮助我。

我正在寻找的事件子项目应该与workbook_open子项目非常相似。显然,每次打开工作簿时都会触发它。所以我的问题是:打开某个工作表时是否会触发类似的事件子项?有点像worksheet3_open

3 个答案:

答案 0 :(得分:2)

您可以在Worksheet3代码页中使用Worksheet_Activate()事件。

  1. 通过在“ PRoject”窗口中双击来选择工作表:

    enter image description here

  2. 从顶部的下拉菜单中选择“工作表”

    enter image description here

  3. 从第二个下拉菜单的右侧选择“激活”。

    enter image description here

您将创建一个名为Worksheet_Activate()的新子例程,该子例程将在用户激活该选项卡时触发。

然后您可以在该代码内调用子例程,以便其也可以运行。

答案 1 :(得分:1)

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

End Sub

网上什么都没有???? :)

答案 2 :(得分:0)

在您的工作簿下放置以下代码:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

    If Sh.Name = "worksheet3" Then
        YourSub
    End If

End Sub