Visual Basic - GRABAR DE VB A WORD

Life is soft - evento anual de software empresarial
 
Vista:

GRABAR DE VB A WORD

Publicado por BETO (2 intervenciones) el 24/05/2006 18:22:16
SALUDOS COLEGAS:
REQUIERO AYUDA PARA GRABAR INFORMACIN DE UNA FORMA DE VB A WORD Y EXCEL
POR SU ATENCION GRACIAS.
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:GRABAR DE VB A WORD

Publicado por ivan (1039 intervenciones) el 24/05/2006 20:13:12
Es algo complicado.

De Visual a Word se se puede, ya sea que copies el contenido de alguna variable sobre una hoja de word o después de determinado texto o página.

Crea un objeto tipo Word, abre el archivo y hazle lo que le tengas que hacer

Dim Obj_Word As Word.Application

Set Obj_Word = New Word.Application

Al hacer esto creo que se abre el word con un documento en blanco, como no se qué quieras hacer en el documento de word, pues no puedo ayudarte mucho que digamos.

Si acaso pretendes abrir un archivo de word y modificarlo, abre primero word, por cada operación que quieras hacer haz una macro, luego la editas y copias el código al Visual, tienes que adaptarlo un poco.

Por ejemplo si en alguna parte de tu documento de Word tienes un texto que dice "FORMA:" y después de eso quieres que se escriba el contenido de determinada variable de tu programa en Visual, tendrás que hacer una macro en Word que busque el Párrago "FORMA:" y enseguida escribes cualquier cosa, finaliza la macro, edítala, revisa el código para que lo entiendas y luego cópialo al Visual

Igual de Visual a Excel también se puede

Dim Obj_Excel As Excel.Application
Set Obj_Excel = New Excel.Application

Debes de incluir en tu proyecto algunas referencias y/o controles que de momento no recuerdo.

Espero esto te sirva, también puedes buscar en el foro, hay muchos mensajes sobre este tema... Suerte
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:GRABAR DE VB A WORD

Publicado por beto (2 intervenciones) el 24/05/2006 21:10:59
Ivan muchas gracias por contestar.
Para hacer mas especifico , lo que quiero hacer es de una hoja de word que ya existe y que tiene titulos y agun texto fijo, lo que quiero es en una parte de la hoja por ejemplo de la linea 15 a la linea 25 mandar informacion de algunos objetos como un listbox , textos o combobox a dichas lineas.
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:GRABAR DE VB A WORD

Publicado por ivan (1039 intervenciones) el 24/05/2006 21:22:02
Muy bien, declara el objeto de Word como te puse
Dim Obj_Word As Word.Application

Y ya en el Sub donde vayas a poner el código para que te genere el docum,ento de word configúralo
Set Obj_Word = New Word.Application

Para abrir un documento de word es asi..:

Nombre_Archivo = "c:\doc1.doc"
Obj_Word.Documents.Open FileName:=Nombre_Archivo, _
ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
wdOpenFormatAuto, XMLTransform:=""

Por ejemplo, aqui busco el texto "•1•" en el documento que abrí, muevo algunas flechas, no recuerdo cuales, y luego escribo el contenido de "Var1"

With Obj_Word
' busca el primer valor var1
.Selection.HomeKey Unit:=wdStory
.Selection.Find.ClearFormatting
.Selection.Find.Text = "•1•"
.Selection.Find.Replacement.Text = ""
.Selection.Find.Forward = True
.Selection.Find.Wrap = wdFindContinue
.Selection.Find.Format = False
.Selection.Find.MatchCase = False
.Selection.Find.MatchWholeWord = False
.Selection.Find.MatchWildcards = False
.Selection.Find.MatchSoundsLike = False
.Selection.Find.MatchAllWordForms = False
.Selection.Find.Execute
.Selection.MoveLeft Unit:=wdCharacter, Count:=1
.Selection.Delete Unit:=wdCharacter, Count:=1
.Selection.Delete Unit:=wdCharacter, Count:=1
.Selection.Delete Unit:=wdCharacter, Count:=1
.Selection.TypeText Text:=Var1
End With

Para cualquier cosa que quieras hacer, haz la macro en word, edítala y llévate el código hacia el Visual, es cosa que le entiendas y lo adaptes un poco. Esto es solo un ejemplo para que veas más o menos como funciona esto...

Saludos y Suerte
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