У меня есть шаблон документа MS Word, который просит пользователя ввести информацию, выполняет некоторую проверку достоверности, печатает документ, а затем закрывает файл. Если открытых файлов больше нет, он выходит из Word.
Отлично работает, но печать прекратилась, когда я добавил код для выхода из Word. Он будет печатать, если открыт другой документ, так как он не выходит из слова.
Я добавил в таймер и функцию DoEvents задержку на 1,5 секунды перед выходом, что дает время для отправки документа на принтер перед оператором выхода. Это работает, но кажется подверженным ошибкам, так как период ожидания может быть недостаточным при определенных обстоятельствах.
Можно ли сказать, что документ действительно поступил на принтер из VBA?
Текущий код выглядит так:
...
DocsOpen = Application.Documents.Count = 1
ActiveDocument.PrintOut
Timer1 = Timer
Do While Timer < Timer1 + 1.5
DoEvents
Loop
ActiveDocument.Close False
If DocsOpen Then Application.Quit False
...
Спасибо!