Visual Basic - Automatización de word mediante visual basic 6.0

Life is soft - evento anual de software empresarial
   
Vista:

Automatización de word mediante visual basic 6.0

Publicado por iaras66 (4 intervenciones) el 27/03/2008 13:46:41
Hola a todos!!! El caso es que tengo una base de datos llamada Cuestionario en la siguiente ubicación: C:ProyectoCuestionario.mdb
y lo que quiero hacer es que los campos de la tabla "Datos" que son "numinicio" y "numfinal" aparezcan en el documento word que yo desee abrir.

Ej: Nº Cuestionario: numinicio
Nº Páginas: numfinal

Por lo pronto tengo implementado parte del código pero me da bastantes problemas, aparte de que crea un documento word en le que poner los datos y no me deja abrir uno que yo seleccione.

Estoy un poco perdido en este punto... alguien que pueda ayudarme!!!
Otra idea sería pasar los campos directamente desde el formulario al documento word

Si alguien podría pasarme codigo de muestra para que pueda hacerlo estaría muy agradecido!!!
¡¡¡GRACIAS!!!

La parte del código que tengo hecha es la siguiente:

Private Sub Form_Load()
'Start Word.
Set oApp = CreateObject("Word.Application")
End Sub
Private Sub Command1_Click()
Dim oMainDoc As Word.Document
Dim oSel As Word.Selection
Dim sDBPath As String

'Start a new main document for the mail merge.
Set oMainDoc = oApp.Documents.Add

With oMainDoc.MailMerge

.MainDocumentType = wdFormLetters

'Set up the mail merge data source to Northwind.mdb.
sDBPath = "C:ProyectoCuestionario.mdb"
.OpenDataSource Name:=sDBPath, _
SQLStatement:="SELECT * FROM [Datos]"

'Add the field codes to the document to create the form letter.
With .Fields
Set oSel = oApp.Selection
.Add oSel.Range, "Nº Cuestionario, [numinicio]"
oSel.TypeParagraph
.Add oSel.Range, "Nº Pagina, [numfinal]"
oSel.TypeParagraph

End With
End With

'Perform the mail merge to a new document.
With oMainDoc
.MailMerge.Destination = wdSendToNewDocument
.MailMerge.Execute Pause:=False
End With
End Sub
Private Sub oApp_MailMergeAfterMerge(ByVal Doc As Word.Document, ByVal DocResult As Word.Document)

'When the mail merge is complete, 1) make Word visible,
'2) close the mail merge document leaving only the resulting document
'open and 3) display a message.
Doc.Close False
oApp.Visible = True
MsgBox "Datos añadidos al documento: " & oApp.ActiveDocument.Name

End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder