在Excel 2016中打开和关闭工作簿或实例

时间:2016-06-13 11:33:21

标签: c# excel interop instance excel-2016

我们有一个Excel Interop COM加载项,在某些时候执行以下操作:

CurrentWorkbook.Close();
//other code
ExcelApplication.Workbooks.Open("B.xls");

假设我们有一个工作簿A.xls打开。在Excel 2010之前,这在代码运行时按预期工作:A关闭,然后打开B.xls。我已经读过,自Excel 2013以来,每个工作簿都在自己的Excel实例中打开。然而,即使使用Excel 2013,这也符合上述预期。没有额外的窗口打开。

但是,Excel 2016有一些修改,当A.xls关闭时,仍会保留一个空的工作簿shell。之后,B.xls在另一个窗口打开。所以最后我有一个空窗口和一个带有B.xls的窗口。

似乎两个窗口不是独立的:关闭B.xls不会创建另一个空的Excel窗口,单击空窗口上的关闭实际上将关闭B.xls。

关于如何在A关闭时阻止空窗口,或者在空窗口(A左侧)中打开B.xls作为容器而不是第二个窗口的任何想法?

1 个答案:

答案 0 :(得分:0)

在启动选项下,您可以在此应用程序启动时关闭"显示开始屏幕"恢复excel / word等以恢复其以前的行为