Excel VBA ActiveWindow.Visible隐藏错误的工作簿

我想打开一个工作簿(WB1),然后在打开时打开另一个工作簿(WB2)。 我想WB2隐藏。

Private Sub Workbook_Open() Application.ScreenUpdating = False Workbooks.Open Filename:="C:\WB2.xlsm" ActiveWindow.Visible = False End Sub 

这是我迄今为止所做的,它所做的就是隐藏两个工作簿。 我希望WB1保持在最前面,并且可见。

谢谢! 玩笑

似乎重要的一部分就是如何再次回头看看。 其他职位是答案..我只是看到它的工作之前,我提交了。 希望这足以解释它,可能已经在更less的空间里完成了。 谢谢。

我不得不同意发表一些描述关键工作路线的话。 我只是新手,不得不说,99%的职位需要一些研究,在那里得到一个需要的variables。 我相信这样足以添加一些咒语作为小时,许多人都可以花费,试图find党的答案,但会克制:)。

其结果是:地球上的每个人都必须花费2个小时。
(感谢有代码,把代码放在一个盒子里,需要调整一些行来包含/空间线干涉?)。

我发现:换出可能无法正常工作:.Visible和.Hidden – 不知道windows(1)中的1是什么。

 sub TEST1() 'in a module 'if want to happen when you open a wb, place in: "ThisWorkbook" module as: 'Private Sub Workbook_Open() Dim wb As Workbook 'Set wb = Workbooks("WB2.xlsm") 'YES 'Set wb = Workbooks(Filename:="C:\WB2.xlsm") 'untried should work for path eg 'Set wb = Workbooks.Open(Filename:="C:\WB2.xlsm") 'original, with a command added: open Application.ScreenUpdating = False If 0 = 0 Then 'set to: if 0 = 1 to skip test If wb.WINDOWS(1).Visible = False Then 'TOGGLES: press F5 or run macro button wb.WINDOWS(1).Visible = True MsgBox "Workbook is NOT Hidden" & Space(10), vbQuestion 'a good test method Else wb.WINDOWS(1).Visible = False '<< line to use, to hide wb on open MsgBox "Workbook is Hidden" & Space(10), vbQuestion 'a good test method End If Else wb.WINDOWS(1).Visible = False '<< line to use, to hide wb on open end if End Sub 
 Private Sub Workbook_Open() Dim wb as workbook Application.ScreenUpdating = False set wb=Workbooks.Open(Filename:="C:\WB2.xlsm") wb.Windows(1).Visible = False End Sub