在 vba 中通过用户表单隐藏特定工作簿

Hide a specific workbook via userform in vba

我有一个带有 2 个命令按钮的用户表单:隐藏和显示。

如果我只打开 1 个工作簿,此工作。我可以简单地从表单中隐藏和显示工作簿。但是,如果我打开了另一个工作簿,请说 Book1。然后我点击隐藏,它也会隐藏 Book1。我只想隐藏特定的工作簿。

这是我的代码:

Private Sub cmdHide_Click()

'ThisWorkbook("hide_sheet").
Application.Visible = False

End Sub

Private Sub cmdShow_Click()

'ThisWorkbook("hide_sheet").
Application.Visible = True


End Sub

应该是这样的

Option Explicit
Private Sub cmdHide_Click()
    'ThisWorkbook("hide_sheet").
    Workbooks("Book1.xlsx").Windows(1).Visible = False
End Sub

Private Sub cmdShow_Click()
    'ThisWorkbook("hide_sheet").
    Workbooks("Book1.xlsx").Windows(1).Visible = True
End Sub

另一个适用于 Excel 2010 和 2013 的示例

Option Explicit
Private Sub cmdHide_Click()
    'ThisWorkbook("hide_sheet").
    Windows(ThisWorkbook.Name).Visible = False
End Sub

Private Sub cmdShow_Click()
    'ThisWorkbook("hide_sheet").
    Windows(ThisWorkbook.Name).Visible = True
End Sub