Grabar documento word desde Access.

Hola, Raul:
Quisiera grabar un documento word desde access. La ruta de ese documento la
construyo recogiendo una serie de datos que obtengo desde el formulario activo.
Utilizo el siguiente código:
Private Sub cmdWord_Click()
On Error GoTo Err_cmdWord_Click
Dim PathArchivo As String
Dim WordZona As String
Dim WordRef As String
Dim OrdenRef As Integer
WordZona = "Sur"
WordRef = "ZX02009"
OrdenRef = Val(Right(WordRef, 3)) + 1
Mid(WordRef, 5, 3) = Right("000" + LTrim(str(OrdenRef)), 3)
WordRef = Mid(WordRef, 1, 2) + " " + Mid(WordRef, 3, 2) + " " + Mid(WordRef, 5,
3)
PathArchivo = "D:\VENTAS\ZONAS\" _
& WordZona & "\" & WordRef & ".doc"
'___________________________________________
Dim oApp As Object
Set oApp = CreateObject("Word.Application")
oApp.Visible = True
oApp.Documents.Save FileName:=PathArchivo
Me.txtSQL.Value = PathArchivo
'___________________________________________
Exit_cmdWord_Click:
Exit Sub
Err_cmdWord_Click:
MsgBox err.Description
Resume Exit_cmdWord_Click
End Sub
==========
El caso es que no consigo grabarlo, pues me sale el siguiente error: "NO
COINCIDEN LOS TIPOS".
Si sustituyo
oApp.Documents.Save FileName:=PathArchivo
por
oApp.Documents.Open FileName:=PathArchivo
Entonces todo funciona a la perfección. Me lo abre sin ningún problema.
¿Alguna idea?
Gracias,
Kraken

1 Respuesta

Respuesta
1
No he podido reproducirtelo porque no se que estas manejando con:
Dim WordZona As String Dim WordRef As String Dim OrdenRef As Integer
El error de que no coinciden los tipos creo que es porque estas DIM_ensionando algo (string o integer) que luego no coincide con lo que devuelve la variable.
Vistas así las cosas lo único que se me ocurre es que si no tienes problemas para el Open, que añadieses un SendKeys (sobre el winword) después de abrirlo para que te haga el Guardar, es posible que funcione.
Si se trata de manejar documentos hay una aplicación (.mdb) llamada DocMgr_2K.mdb que va genial. Esta disponible en http://www.datastrat.com/DataStrat2.html

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas