如何获得工作簿中的选定选项卡(而不是ActiveWorkbook)?

时间:2018-09-27 14:18:05

标签: excel vba

我希望这是一个简单的问题...

我的理解是,即使宏在另一个工作簿中运行,“ ActiveWorkbook”也将返回当前活动的工作簿(这就是为什么我几乎总是使用“ ThisWorkbook”的原因)。

即使该宏在另一个工作簿(或另一个工作表)中运行,“ ActiveSheet”也将返回当前活动的工作表。

那么,即使该工作簿不是当前处于活动状态的工作簿,我如何才能获得当前焦点位于该工作簿的工作表呢?

1 个答案:

答案 0 :(得分:2)

您可以通过完全合格.ActiveSheet

示例:

Private Sub test()

    Dim wb As Workbook

    Set wb = Workbooks.Add

    'Change the name of Sheet1 in the second workbook
    'so it's not confused with Sheet1 in the first workbook.
    wb.Sheets("Sheet1").Name = "Foo"

    ThisWorkbook.Activate

    MsgBox wb.ActiveSheet.Name

End Sub