"Приложение.Выход " оставляет Excel запущенным в фоновом режиме

у меня есть небольшой файл excel, который запускается приложением планирования каждые 15 минут.

функции в ячейках excel считывают данные из разных мест в сети и сохраняют их в ячейках этого файла excel. Все работает отлично.

код VBA затем сохраняет файл и делает приложение.Выход.

в предыдущей версии excel он отлично работал. После обновления до 2016 года, Application.Quit закрывает "интерфейс excel", но диспетчер задач показывает сотню "Превосходить.ехе"все еще сидит там, используя до 40 Мб памяти каждый.

прикрепленное изображение показывает только пять excel.exe в Диспетчере задач, так как компьютер работал только менее двух часов в этот момент. Но через 24 часа их будет около 100. Компьютер выходит из строя через несколько дней.

Excel.exe still running


Спасибо за быструю помощь. Я не уверен, должен ли я поместить свои ответы здесь, отредактировав свой оригинал вопрос.

вот код. Фактическое обновление значений ячеек выполняется в самих ячейках. Существует дополнение, которое считывает значения из некоторых ПЛК на нашей фабрике. Все это прекрасно работает.

Private Sub Workbook_Open()
    Application.CalculateFull
    ActiveWorkbook.Save
    Application.Quit
End Sub

при запуске файла excel он обновляется и закрывается. Это работало в течение многих лет, пока мы не обновились до 2016. Приложение.Quit заставит excel полностью исчезнуть. Не сейчас.

1 ответов


до Excel 2016, Excel имел возможность иметь несколько файлов Excel в одном окне.

на Excel 2016, это одно окно для каждого приложения.

проблема с вашим кодом заключается в том, что он закрывает экземпляр. Основываясь на том, как были открыты файлы Excel, этого было бы достаточно или нет. Например, если бы файлы Excel были открыты в том же экземпляре, этого было бы вполне достаточно.