Acces 2003, vinculos con word
He creado una base de datos y quisiera que los datos pasen a formar parte de un documento de Word, Ej, Nombre, apellidos, cantidad abonada.
Muchas gracias
Muchas gracias
Utiliza este código
Option Compare Database
\' ATENCION
\' No estan incluidos los controles de errores ni las posibles excepciones.
\' Se asume que la plantilla está en la misma carpeta que la mdb
Const strDOT = "COMP.dot"
Const strDOC = "COMP. Nº "
Private Sub bot01_Click()
Dim strPATH, strPROP
Dim WordApp As Object
strPATH = Application.CurrentProject.Path
Set WordApp = CreateObject("Word.Application")
With WordApp
.Visible = False
.Documents.Add strPATH & "\" & strDOT
End With
With WordApp.ActiveDocument
For Each strPROP In .CustomDocumentProperties
Select Case strPROP.Name
Case "DATO1": strPROP.Value = Nz(Me.DATO1, 0)
Case "DATO2": strPROP.Value = Nz(Me.DATO2, " ")
Case "DATO3": strPROP.Value = Nz(Me.DATO3, " ")
Case "DATO14": strPROP.Value = Nz(Me.DATO14, " ")
Case "DATO15": strPROP.Value = Nz(Me.DATO15, " ")
Case "DATO16": strPROP.Value = Nz(Me.DATO16, " ")
Case "DATO17": strPROP.Value = Nz(Me.DATO17, " ")
\'Case "TEXTO": strPROP.Value = Nz(Me.TEXTO, " ")
End Select
WordApp.Application.ActiveDocument.Variables("texto").Value = Nz(Me.TEXTO, " ")
\'Tambien se puede hacer con
\'strPROP.Value = Me(strPROP.Name)
Next
End With
With WordApp
.ActiveDocument.Fields.Update
.ActiveDocument.SaveAs strPATH & "\" & strDOC & Me.DATO1 & ".doc"
.Quit
End With
Set WordApp = Nothing
MsgBox "DOCUMENTO LISTO PARA REDACTAR"
End Sub
Private Sub bot02_Click()
Dim strPATH
Dim appWord As Object
strPATH = Application.CurrentProject.Path
Set appWord = CreateObject("Word.basic")
With appWord
.appmaximize
.fileopen strPATH & "\" & strDOC & Me.DATO1 & ".doc"
.viewpage
End With
Set appWord = Nothing
DoCmd.Close
End Sub
Option Compare Database
\' ATENCION
\' No estan incluidos los controles de errores ni las posibles excepciones.
\' Se asume que la plantilla está en la misma carpeta que la mdb
Const strDOT = "COMP.dot"
Const strDOC = "COMP. Nº "
Private Sub bot01_Click()
Dim strPATH, strPROP
Dim WordApp As Object
strPATH = Application.CurrentProject.Path
Set WordApp = CreateObject("Word.Application")
With WordApp
.Visible = False
.Documents.Add strPATH & "\" & strDOT
End With
With WordApp.ActiveDocument
For Each strPROP In .CustomDocumentProperties
Select Case strPROP.Name
Case "DATO1": strPROP.Value = Nz(Me.DATO1, 0)
Case "DATO2": strPROP.Value = Nz(Me.DATO2, " ")
Case "DATO3": strPROP.Value = Nz(Me.DATO3, " ")
Case "DATO14": strPROP.Value = Nz(Me.DATO14, " ")
Case "DATO15": strPROP.Value = Nz(Me.DATO15, " ")
Case "DATO16": strPROP.Value = Nz(Me.DATO16, " ")
Case "DATO17": strPROP.Value = Nz(Me.DATO17, " ")
\'Case "TEXTO": strPROP.Value = Nz(Me.TEXTO, " ")
End Select
WordApp.Application.ActiveDocument.Variables("texto").Value = Nz(Me.TEXTO, " ")
\'Tambien se puede hacer con
\'strPROP.Value = Me(strPROP.Name)
Next
End With
With WordApp
.ActiveDocument.Fields.Update
.ActiveDocument.SaveAs strPATH & "\" & strDOC & Me.DATO1 & ".doc"
.Quit
End With
Set WordApp = Nothing
MsgBox "DOCUMENTO LISTO PARA REDACTAR"
End Sub
Private Sub bot02_Click()
Dim strPATH
Dim appWord As Object
strPATH = Application.CurrentProject.Path
Set appWord = CreateObject("Word.basic")
With appWord
.appmaximize
.fileopen strPATH & "\" & strDOC & Me.DATO1 & ".doc"
.viewpage
End With
Set appWord = Nothing
DoCmd.Close
End Sub