|
Hola, pues lo que pides se hace con el objeto Word.Application, de hecho, con este objeto se puede acceder a todas las funcionalidades de Word. Te pongo un ejemplo de un listado sacado a partir de RDO:
Private Sub Listado_Click()
Dim Word As Word.Application
Dim lstrSQL As String
Dim lobjRSRegistros As rdoResultset
On Error GoTo GestionError
MousePointer = vbHourglass
lstrSQL = "SELECT campo1, campo2 FROM TABLA"
Set lobjRSRegistros = gobjCN.OpenResultset(lstrSQL, rdOpenStatic)
' Comenzamos a rellenar los campos de la plantilla Word
Set Word = CreateObject("Word.Application")
On Error GoTo GestionError2
Word.Documents.Add Template:=App.Path & "\plantilla.dot", newtemplate:=False
'Word.Visible = True
'Word.Application.WindowState = wdWindowStateMaximize
While Not lobjRSRegistros.EOF
Word.Selection.TypeText lobjRSRegistros!campo1 & ", " & lobjRSRegistros!campo1 & vbCrLf
lobjRSRegistros.MoveNext
Wend
If MsgBox("Pulse 'Si' para imprimir el listado directamente o 'No' para enviar el listado a MS Word", vbYesNo Or vbQuestion, "Imprimir listado") = vbYes Then
Word.ActiveDocument.PrintOut Background:=False
Word.ActiveDocument.Close savechanges:=wdDoNotSaveChanges
Word.Quit
On Error GoTo GestionError
Else
Word.Visible = True
Word.Application.WindowState = wdWindowStateMaximize
End If
MousePointer = vbDefault
lobjRSRegistros.Close
Set lobjRSRegistros = Nothing
Exit Sub
GestionError2:
Word.ActiveDocument.Close savechanges:=wdDoNotSaveChanges
Word.Quit
GestionError:
'ErrorEstandar lstrSQL
MousePointer = vbDefault
End Sub
No olvides valorar la respuesta.
Saludos desde Cartagena.
|