Fechar / liberar o objeto Word no VBA?
Eu tenho o seguinte código para abrir o manual para um aplicativo de pasta de trabalho do Excel que desenvolvi:
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
Isso me dá dois problemas:
O documento é aberto, mas em segundo plano. O usuário não sabe que o documento foi aberto, a menos que saiba verificar o Microsoft Word na barra de tarefas.Quando tento fechar o documento do word, recebo:Este arquivo está em uso por outro aplicativo ou usuário. (C: \ Users \ Me \ AppData ... \ Normal.dotm)Quando clico ok no diálogo, recebo uma tela "Salvar como".
Se eu cancelar isso e tentar fechar a instância em branco do Microsoft Word, eu obtenho:
Foram feitas alterações que afetam o modelo global, Normal. Você quer salvar essas alterações?
Então, se eu clicar em Não, tudo finalmente se fecha.
Alguém pode me ajudar com esses dois problemas? Preciso liberar o objeto de alguma forma? Nunca vi isso antes.
EDITAR:
Depois de tentar o método @ 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
Quando eu tenho um outro documento do Word aberto e clico no botão, ocorre o seguinte:
Manual abre em primeiro plano, mas eu recebo imediatamenteThis file is in use by another application or user. (C:\Users\Me\AppData\...\Normal.dotm)
Eu pressiono OK e recebo o diálogo Salvar como.Cancele a partir do diálogo Salvar como e receba meu documento Manual.Quando clico no X vermelho para fechar o documento, receboChanges have been made that affect the global template, Normal. Do you want to save those change?
Eu clico em Não e o documento é fechado.Se este documento é a primeira instância da palavra que eu abro:
O documento é aberto.Assim que o código atingir oobjWord.Quit
alinhar o documento imediatamente fecha.Estou apenas querendo que o documento seja aberto à frente, permitindo que os usuários visualizem o Manual para obter assistência quando precisarem e permitam que eles fechem o documento a seu critério.