Visual Basic - Inserción Texto en Documento Word

Life is soft - evento anual de software empresarial
 
Vista:

Inserción Texto en Documento Word

Publicado por David (4 intervenciones) el 29/05/2007 18:26:51
Buenas Tardes
Estoy desarrollando desde Visual Studio 2005 una aplicacion para Windows en VB, que contega un formulario con un campo de texto y un boton cuya función es pasar el contenido de esa caja de texto a un archivo de Word e insertarlo en la primera linea.

Puedo abril y cerrar el documento Word, pero no he encontrado la forma de insertar texto dentro del documento WORD

Este es el código

Dim Obj_Word As Object


'Creo una nueva referencia para poder acceder al documento
Obj_Word = CreateObject("Word.Application")

' aplicación de word no visible
Obj_Word.Visible = False

'Abre el archivo especificado mediante el método Open y algunas opciones
'Obj_Word.Documents.Open(FileName:=Path_Word)

Obj_Word.Documents.Open("C:\PRUEBA.doc")

'Crea un parrafo
'Parrafo = Obj_Word.Documents.Microsoft.Office.Interop.Word.Paragraph.Add

'Inserta el campo
'Parrafo.Range.InsertAfter(TextBox1.Text)

'Cierra el documento abierto ( True es para guardar los cambios )
Obj_Word.ActiveDocument.Close(True)

'Destruye las variables de objeto y cierra la aplicación de word
Obj_Word.Quit(False)
Obj_Word = Nothing
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

RE:Inserción Texto en Documento Word

Publicado por cmgcharli (128 intervenciones) el 29/05/2007 19:09:34
Esto inserta el contenido del texbox en el punto de inserción del documento

Selection.TypeText Text:=TextBox1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Inserción Texto en Documento Word

Publicado por DAVID (4 intervenciones) el 30/05/2007 10:22:25
Hola
Queria pasar el texto de una caja de texto de un formulario de visual basic (6.0)
a un campo de formulario de word llamado Campo1

Tengo este codigo


Dim MSWord As New Word.Application
Dim Documento As Word.Document
Dim Parrafo As Paragraph

Set Documento = MSWord.Documents.Open("C:\PRUEBA1.doc")

MSWord.ActiveDocument.ActiveWindow.Document.FormFields("Campo1").Result = Text1.Text

MSWord.Visible = True

End Sub

Obtengo un error diciendome que el campo seleccionado no existe

¿Lo hago bien? Necesito ayuda
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Inserción Texto en Documento Word

Publicado por cmgcharli (128 intervenciones) el 30/05/2007 12:13:50
Lo primero asegurate de que el campo de texto se llama Campo1 para ello en el documento PRUEBA1.DOC coloca el cursor sobre el campo y presiona el boton derecho del raton entra en propiedades y donde pone Marcador pon el nombre Campo1

En un principo creo que tu codigo deberia funcionar no obstante otra forma de hacerlo y saber si el campo tiene bien el nombre seria definir una variable objeto y utilizar un For Each ... in.... ejemplo:

Dim MSWord As New Word.Application
Dim Documento As Word.Document
Dim Parrafo As Paragraph
Dim VarObjeto as Object

Set Documento = MSWord.Documents.Open("C:\PRUEBA1.doc")

For Each varobjeto In ActiveDocument.FormFields
If VarObjeto.Name = "Campo1" Then
VarObjeto.Result = Text1
End If
Next

....Nota: Si pones Debug.Print VarObjeto.Name dentro del For Each... In.... antes del If VarObjeto.name......, te escribara en el Editor de VB en la ventana de Inmediato el nombre de los campos del documento formulario y comprobar si es correcto.

MSWord.Visible = True

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