2016-06-13 3 views
0

Мы имеем Excel Interop COM-надстройки, который выполняет следующие действия в какой-то момент:Открыть и закрыть Workbook или Instance в Excel 2016

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 закрыты, остаются пустой оболочкой книги. Впоследствии B.xls открывается в другом окне. Поэтому в конце я имею 1 пустое окно и окно с B.xls.

Кажется, что два окна не являются независимыми: Закрытие B.xls не создает другое пустое окно Excel, щелкнув по закрытому окну, фактически закроет B.xls.

Любые идеи о том, как я должен предотвратить пустое окно, когда A закрыто, или открыть B.xls в этом пустом окне (который слева) как контейнер, а не второе окно?

ответ

0

В разделе Параметры автозапуска, вы можете отключить «Показать экран запуска, когда это приложение запускается», которые настройки возвращаются Excel/слова и т.д., чтобы вернуться к своему прежнему поведению

+0

Это не экран _start, когда это приложение starts_, но пустой серый экран с только строкой меню, когда рабочая книга закрыта. Кроме того, я говорю не только о конфигурации, чтобы моя машина работала. Этот продукт будет установлен для клиентов, поэтому я хочу изменить поведение программно. – Kenny

+0

Я получаю этот пустой экран в 2010 году, как и в 2016 году. Если вы не хотите пустой экран, вам нужно закрыть excel – BugFinder

+0

Я говорю о сером экране, полученном после запуска _CurrentWorkbook.Close(); _ и затем открывается Workbooks.Open(). Я не говорю о нажатии на кнопку закрытия книги x. – Kenny

Смежные вопросы