Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2012, 14:59   #1
Z@kat
 
Аватар для Z@kat
 
Регистрация: 23.07.2012
Сообщений: 9
По умолчанию Application.Quit и Windows Task Scheduler

Добрый день, форумчане
Пожалуйста, помогите разобраться с одной проблемой.

Имеется Win7, Excel 2010, а так же .xlsm файл со вшитым в него макросом. Таких файлов много и запускаются они раз в неделю для обновления информации и сохранении самих себя в отдельные файлы.

* При запуске файла вручную происходит открытие Excel в бэкграунде, открывается файл, макрос отрабатывает и Excel закрывается.

* При запуске того же файла через Windows Task scheduler происходит открытие Excel в бэкграунде, макрос отрабатывает и останавливается. Но при этом сам Excel остается открытым.

В результате используя Task Scheduler получаю множество отработанных и открытых файлов, хотя в каждом прописан Application.Quit.
В чем может быть ошибка, из-за чего файл Excel не закрывается после запуска через Task Scheduler?
В интернете нашел лишь советы, что нужно делать отдельную задачу на закрытие самого Excel, но мне такой вариант не подходит.

Макрос выглядит примерно так:
Цитата:
Sub Macro()
'

...далее идет тело макроса....

ActiveWorkbook.Save

Application.Quit
End Sub
Z@kat вне форума Ответить с цитированием
Старый 14.11.2012, 14:16   #2
Skif-F
Форумчанин
 
Регистрация: 24.03.2010
Сообщений: 349
По умолчанию

Приходилось делать вызов Excel из Word, возникала такая же проблема. Чтобы её обойти и закрыть Excel, макрос в Word'е после закрытия книги (Workbook.Close) давал дополнительную команду:
Excel.Quit
где Excel определялось так:
Set Excel = CreateObject("Excel.Application") 'Подготовка к приёму файлов

В виду специфичности работы Excel'я команда Application.Quit, сформированная открытой книгой, может не отрабатываться, поскольку вызов был произведён внешней программой.
Нет нерешаемых задач - есть недостаток времени и данных!
Skif-F вне форума Ответить с цитированием
Старый 16.11.2012, 09:16   #3
Z@kat
 
Аватар для Z@kat
 
Регистрация: 23.07.2012
Сообщений: 9
По умолчанию

Спасибо за ответ.
Пожалуйста, посмотрите сообщение в личке.
Z@kat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# Windows Application xellboy8 Помощь студентам 2 12.01.2012 23:24
Native Windows Application BOBAH13 Общие вопросы по программированию, компьютерный форум 12 04.04.2011 08:51
Thread в Windows From Application Flay Windows Forms 7 24.08.2010 21:28