代码只隐藏一个工作簿而不是隐藏所有当前打开的工作簿

时间:2014-05-12 07:09:11

标签: excel vba excel-vba

我通常打开多个工作簿,并且在一个工作簿上,我有一个VBA代码,它隐藏了工作簿并显示了一个UserForm。但是当我打开该工作簿时,我当前打开的所有工作簿也会隐藏。我可以用什么代码来隐藏1个工作簿?

以下是我尝试的代码:

ThisWorkbook.Application.Visible = False

Windows(ThisWorkbook.name).Visible = False

Application.Windows(1).visible = false

Windows(ThisWorkBook.name).visible = False只关闭一个工作簿,它与工作簿混淆,工作表根本不显示。我甚至无法在不使用任务管理器的情况下关闭excel工作簿。

1 个答案:

答案 0 :(得分:5)

ThisWorkbook.Application.Visible = False会更改运行工作簿的应用程序Visible属性,即Excel.EXE的实例...如果此实例正在运行您的其他书籍,因此,所有这些书籍都将从屏幕上消失。

要隐藏单个工作簿,请使用

ActiveWindow.Visible = False

或者,如果您要隐藏的工作簿(例如" MyWorkbook")不是活动的

Windows("MyWorkbook").Visible = False

注意隐藏窗口也会将指针移动到ActiveSheet,同样当你反转它时(即...Visible = True),显示的工作表变为活动状态。