Excel VBA后退按钮,转到上一个选项卡

时间:2016-06-28 18:42:57

标签: excel-vba vba excel

我想创建一个后退按钮来放置我的excel项目中的每个选项卡,一旦按下它将带您到我上次访问的上一个选项卡。例如,如果我在sheet3选项卡中然后移动到Sheet8选项卡,我希望能够单击sheet8中的后退按钮以将我带回到sheet3选项卡。因此,基本上Excel会跟踪我之前访问过的最后一个标签,并在按下后退按钮时将其恢复原状。

1 个答案:

答案 0 :(得分:1)

您需要跟踪最后访问的标签以将其关闭。

要在切换标签页时捕获表格,您可以使用工作簿的SheetDeactivate()事件。在VBE中,单击进入" ThisWorkbook"在VBAProject中添加以下代码:

enter image description here

'Global Variable to hold last sheet selected
Public lastSheet As Object

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    'When we deactivate a tab toss the deactivated sheet into the lastSheet global
    Set lastSheet = Sh
End Sub

现在,当我们想要访问最后一个单击的工作表时,我们可以引用变量lastSheet

在新模块中添加以下子例程:

enter image description here

Sub goBack()
    'go back to the last sheet using the lastSheet variable
    ThisWorkbook.lastSheet.Activate
End Sub

现在,您可以向选项卡添加按钮(或形状),并将它们指向GoBack()子例程。