Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Como insertar contenido de un text en un documento de word
Enviado por elena el día 21 de septiembre de 2003
Hola, necesito que alguien me diga como he de hacer para insertar el contenido de un text en un documento de word
Se como hacer para abrir el documento, pero no se como hay que hacer para que me inserte el registro en un lugar en concreto
Ejemplo.
DOCUMENTO:
D.Dª. ( aqui va el registro del text1), DNI ( y aqui el del text2)
FORMULARIO:
text1 = Elena
Text2= 12.123.456
¿Como tengo que hacerlo?
¿tengo que dar alguna ionstrucción en el documento?
Si alguien quiere ayudarme, POR FAVOR, hacerlo de forma clara, estoy empezando
Re: Como insertar contenido de un text en un documento de word
Enviado por rafa el día 22 de septiembre de 2003
Tienes que guardar esos datos en una bd (acces es lo mas comodo, creo) y combinar correspondencia entre el doc y la bd.
En word tienes una opcion, combinar correspondencia, sigue el asistente para elegir la tabla con la que combinas y luego inserta los campos en el documento word. Guardalo como plantilla de word .dot
y luego en vb:
Dim objWord As Word.Application
Dim objDoc As Word.Document
Dim strDocu As String
Set objWord = New Word.Application
objWord.WindowState = wdWindowStateMaximize
objWord.Visible = False
Set objDoc = objWord.Documents.Add(sRutaPlantillas & "\documento.dot")
'objDoc.MailMerge.OpenDataSource Name:=sRutaAuxSadyr, linktosource:=True, sqlstatement:="Select * from GT_ENVIOS " objDoc.MailMerge.Execute objDoc.MailMerge.Application.PrintOut False
objWord.Quit False
Set objWord = Nothing
Re: Como insertar contenido de un text en un documento de word
Enviado por sdemingo el día 22 de septiembre de 2003
En el casod e que no tengas esa información guardada en una BBDD de access, puedes hacer lo siguiente: Deberás colocar marcadores en el documento word a los que harás referencia luego para escribir el texto en esa posición.
dim marcador as string
dim texto as string
marcador = "NOMBRE"
If wordApp.Documents(docActivo).Bookmarks.Exists(marcador) = True Then ' Si existe el marcador
wordApp.Documents(docActivo).Bookmarks(marcador).Select 'te posicionas en el marcador
wordApp.Selection.Font.Bold = True 'Negrita
texto = Text1.Text 'asignas valor
wordApp.Selection.TypeText Text:=texto 'escribes en el word
wordApp.Selection.Font.Bold = False 'no negrita
End If
Tendías que hacer por cada una de las marcas que tuvieras en el documento word.
wordApp es el objeto Word.Application
docActivo es la ruta del documento word en cuestión.
Re: Re: Re: Re: Como insertar contenido de un text en un documento de word
Enviado por Mª Carmen el día 20 de noviembre de 2003
No me permite poner:
wordApp.Documents(docActivo).Bookmarks.Select
tengo q poner
wordApp.Documents.Add(docActivo).Bookmarks.Select
De está forma en lugar de abrirme el documento con los campos q le paso, me abre un documento por cada valor de cada campo.
Hay alguna manera de salvar el documento, para q mantenga todos los valores de los campos en un mismo archivo?
Otra pregunta con el método Open aunque le ponga Onlyread=false me lo abre de solo lectura
Por favor ayudame espero tu respuesta. Muchas gracias chao
Re: Re: Re: Re: Re: Re: Como insertar contenido de un text en un documento de word
Enviado por Mª Carmen el día 24 de noviembre de 2003
Muchisimas gracias, sin tu ayuda no lo habria conseguido.
Tengo otro problema con los DataReport, haber si me puedes ayudar.
Tengo una lista con cargos cuando selecciono uno y le doy a un boton imprimir informe me muestra el informe correspondiente a ese cargo (lo hace perfectamente), pero cuando cierro este y pincho en otro cargo me da el siguiente error:
"La operación no está permitida si el objeto está abierto"
Re: Re: Re: Re: Re: Re: Re: Como insertar contenido de un text en un documento de word
Enviado por sdemingo el día 24 de noviembre de 2003
Hola,
ese error te lo está dando porque estáws abriendo un RecordSet que ya está abierto. Revisa que cierres todos los recordset que uses antes de volver a abrirlos.
También revisa que cada vez que haces referencia al DataEnvironment, no intenete abriri la Base de datos o un RecordSet. Cerciorate de que tan solo lo hace la primera vez.
Re: Como insertar contenido de un text en un documento de word
Enviado por zerjy el día 26 de abril de 2004
Dim oWrd As Word.Application
Dim oDoc As Word.Document
Set oWrd = New Word.Application
Set oDoc = oWrd.Documents.Open("C:Documento1.doc")
´ para rellenar los datos puedes hacer esto...
If Not (oDoc Is Nothing) Then
With oDoc
.Bookmarks.Item("Marcador1").Range.Text = "Valor1"
.Bookmarks.Item("Marcador2").Range.Text = "Valor22222222222222"
End With
´ para rellenar una tabla (tienes k tener 1 en el doc.)...
oDoc.Tables(1).Rows.Add ´Añade una fila
oDoc.Tables(1).Cell(1, 1).Range.Text = "Prueba Fila 1 Col 1"
oDoc.Tables(1).Cell(1, 2).Range.Text = "Prueba Fila 1 Col 2"
´ para visualizar el documento...
oWrd.Visible = True
´ para imprimir el documento...
oWrd.PrintOut
End If
´ IMPORTANTE! .. para cerrarlo (esto no guarda cambios)
oDoc.Saved = True
oDoc.Close
Set oDoc = Nothing
oWrd.Quit (False)
Set oWord = Nothing
´*******************************************************************
ya esta.. esto puedes probarlo Creando un documento nuevo de word(C:Documento.doc), le pones 2 marcadores (Marcador1 y Marcador2) y le pones una tabla(2 columnas)
Creas un proyecto nuevo con un boton y en el click le pones lo k esta entre los * (y la referencia a Microsoft Word...)
Re: Re: Como insertar contenido de un text en un documento de word
Enviado por mMoli el día 25 de agosto de 2008
Saludos...
He estado buscando la forma de CREAR un documento de word desde visual basic partiendo de cero que le puedan ser insertadas marcas para ser usadas luego en la impresion como plantilla
o por lo menos poder modificar los nombres de las marcas del documento de word desde visual basic.