Закрыть / отпустить объект Word в VBA?
У меня есть следующий код, чтобы открыть руководство для приложения Excel Workbook, которое я разработал:
Sub OpenManual()
'Word.Application.Documents.Open "\\filePath\FormFlow To MSExcel\FeedSampleReport-Manual.docx"
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
objWord.Documents.Open "\\filePath\FormFlow To MSExcel\FeedSampleReport-Manual.docx"
End Sub
Это дает мне 2 проблемы, хотя:
Документ открывается, но в фоновом режиме. Пользователь неНе знаю, открылся ли документ, если они не знают, проверять ли Microsoft Word на панели задач.Когда я пытаюсь закрыть слово документ, я получаю:Этот файл используется другим приложением или пользователем. (C: \ Users \ Me \ AppData ... \ Normal.dotm)Когда я нажимаю ОК в этом диалоге, я получаю "Сохранить как" экран.
Если я откажусь от этого и попытаюсь закрыть пустой экземпляр Microsoft Word, я получу:
Были внесены изменения, влияющие на глобальный шаблон Normal. Вы хотите сохранить эти изменения?
Затем, если я нажму Нет, все окончательно закроется.
Может кто-нибудь помочь мне с этими двумя проблемами? Нужно ли как-то освободить объект? Никогда не видел этого раньше.
РЕДАКТИРОВАТЬ:
Попробовав метод @ Layman-Coders:
Sub OpenManual()
'Word.Application.Documents.Open "\\filePath\FormFlow To MSExcel\FeedSampleReport-Manual.docx"
'Open an existing Word Document from Excel
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
' Should open as the forefront
objWord.Activate
'Change the directory path and file name to the location
'of the document you want to open from Excel
objWord.Documents.Open "\\filePath\FormFlow To MSExcel\FeedSampleReport-Manual.docx"
objWord.Quit
Set objWord = Nothing
End Sub
Когда я открываю еще один документ Word и нажимаю кнопку, происходит следующее:
Мануал открывается в первых рядах, но я сразу получаюThis file is in use by another application or user. (C:\Users\Me\AppData\...\Normal.dotm)
Я нажимаю ОК и получаю диалог Сохранить как.Отмените выход из диалога «Сохранить как» и представьте мой документ «Руководство».Когда я нажимаю на красный крестик, чтобы закрыть документ, я получаюChanges have been made that affect the global template, Normal. Do you want to save those change?
Я нажимаю Нет, и документ закрывается.Если этот документ - первый экземпляр слова, которое я открываю:
Документ открывается.Как только код попадет вobjWord.Quit
Строка документа сразу закрывается.Я просто хочу, чтобы документ открылся на передний план, чтобы пользователи могли просматривать Руководство для помощи, когда им это нужно, и позволяли закрывать документ по своему усмотрению.