作者:qaz9 | 来源:互联网 | 2022-12-03 18:09
我正试图在一个漫长的脚本中隐藏Excel,我在其中进行了一些网络抓取.我能够隐藏应用程序就好了,问题是当我改.Visible
回来时True
,我还有1-2个额外的应用程序(只是空的Excel shell).我猜其中一个是我的PERSONAL.xlsb
工作簿,但我不确定另一个是什么 - 有时我得到一个额外的,有时我得到两个.我可以关闭这些shell文件的唯一方法是EXCEL.EXE
通过任务管理器结束进程.
我试图隐藏主窗口(Windows(1)
)也无济于事(它只隐藏工作簿,而不是应用程序):
Sub Test()
Windows(ThisWorkbook.Name).Visible = False
Application.Wait (Now + TimeValue("0:00:05"))
Windows(ThisWorkbook.Name).Visible = True
End Sub
我怎样才能让我的主工作簿重新出现?
示例代码:
Sub Test()
Application.Visible = False
Application.Wait (Now + TimeValue("0:00:05"))
Application.Visible = True
End Sub
编辑:这是在Windows 7,Excel 2016上
Edit2:单独运行Application.Visible = True
也给了我这两个幻像应用程序.
编辑3:问题肯定与存储在PERSONAL.xlsb
文件中的宏有关- 当我进入一台新计算机并向该工作簿添加新宏时,我可以重现该问题.但是,我仍然不确定如何避免它......
任务管理器:
从Filemaker Pro打开Excel的脚本:
Open URL [With dialog:Off; "C:\Users\Username\Desktop\TestFile.xlsm"]
内部TestFile.xlsm
:
Private Sub Workbook_Open()
Application.Visible = False
'Refresh a query in the Excel workbook that is linked to Filemaker Pro
'Webscrape, webscrape, webscrape from a worksheet inside this Excel document
'to a hidden Internet Explorer Window (ewww, IE!)
Application.Wait (Now + TimeValue("0:00:05"))
Application.Visible = True
'Either close Excel completely or reload my main instance of Excel
End Sub
我已经意识到我可以用Excel.Application.Quit完全退出Excel,但我还没有决定是否要立即退出,或者在Excel中重新绘制一个总结导入过程的UserForm