Word.Document en VB

En mi aplicación en VB cojo una plantilla de word, la relleno con unos datos y luego puedo imprimirla o enviarla por email.
El problema es que sólo lo puedo hacer una vez (imprimirla o enviarla por correo) por que la segunda vez que lo hago me da este error:
'El equipo servidor remoto no existe o no está disponible'
Estos son los objetos que utilizo y el suo que hago de ellos:
Dim wdApp As Word.Application
Dim MyDoc As Word.Document
Set wdApp = New Word.Application
Set MyDoc = Nothing
'Cierro los documentos abiertos:
If wdApp.Documents.Count > 0 Then
For i = 1 To wdApp.Documents.Count
wdApp.Documents(i).Close
Next i
MyDoc.Close
Set MyDoc = Nothing
End If
'Abro el documento:
Set MyDoc = Documents.Open(App.Path & "\plantilla.doc")
wdApp.Visible = False
MyDoc.PrintOut
DoEvents
MyDoc.Close SaveChanges:=wdDoNotSaveChanges wdApp.Quit
Set MyDoc = Nothing
Con esto imprime la plantilla y debería cerrar todos los objetos para que cuando los vuelva a abrir no haya ningún error.
¿Me dejo algo por cerrar?
1

1 Respuesta

35.750 pts. Desde los 14 años dedicado a la informática,...
Pues el fallo lo tienes en la siguiente línea:
Set MyDoc = Documents.Open(App.Path & "\plantilla.doc")
donde deberías haber puesto:
Set MyDoc = wdApp.Documents.Open(App.Path & "\plantilla.doc")
Puesto que estas abriendo un documento en la instancia de Word que acabas de crear, o sea, el objeto wdApp.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas