SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: gaita02 en Martes 10 de Febrero de 2004, 15:54

Título: Combinar Correspondencia Con Word
Publicado por: gaita02 en Martes 10 de Febrero de 2004, 15:54
Hola a todos, quisiera saber si es posible completar un documento de Word (una carta), con campos que sean seleccionados desde una aplicacion de VB y que la carta pueda ser impresa directamente desde VB.

Gracias.

Damian
Título: Re: Combinar Correspondencia Con Word
Publicado por: Brroz en Martes 10 de Febrero de 2004, 16:45
Hola gaita02.

Lo mejor que puedes hacer para empezar es añadir una referencia a Microsoft Word Object Library, a partir de ahí y usando el examinador de objetos, ve investigando...

Para comenzar fíjate en este pequeño y básico ejemplo:

Código: Text
  1.  
  2.     .
  3.     .
  4.     .
  5.     Dim objApp As New Word.Application
  6.     Dim doc1 As Word.Document
  7.     Set doc1 = objApp.Documents.Add
  8.     objApp.Selection.TypeText "Esto es un texto de prueba"
  9.     doc1.SaveAs "C:\Ruta\MiDocumento.doc"
  10.     doc1.Close
  11.     Set doc1 = Nothing
  12.     objApp.Quit
  13.     Set objApp = Nothing
  14.     .
  15.     .
  16.     .
  17.  
  18.  

De gran ayuda será el editor de VBA de word: graba macros con las acciones que quieras realizar y luego comprueba en el editor el código que realiza las acciones de la macro.

Suerte.
Título: Re: Combinar Correspondencia Con Word
Publicado por: pacegar en Martes 10 de Febrero de 2004, 17:29
Yo ya habia planteado esa cuestión unos días mas atras.
aquí está el código que utilizo y funciona correctamente:

http://foros.solocodigo.com/index.php?showtopic=6353 (http://foros.solocodigo.com/index.php?showtopic=6353)

Espero les sirva, Saludos  :smartass:
Título: Re: Combinar Correspondencia Con Word
Publicado por: gaita02 en Martes 10 de Febrero de 2004, 18:55
Gracias a todos por las respuestas, pero se me esta complicando un poco.

Lo que yo quiero es tener una carta modelo, ejemplo:

Buenos dias SR.______________ de la calle _____________
donde se me complete el nombre del señor con el campo nombre de una tabla y la calle con el campo direccion de la tabla. Dicha tabla es generada mediante una consulta de SQL, con eso no tengo problemas. La idea es que me genere una carta por cada registro que yo tenga en la tabla ...

Gracias de nuevo.

Damian
Título: Re: Combinar Correspondencia Con Word
Publicado por: rechy en Martes 10 de Febrero de 2004, 20:13
Hola.

Que te parece si metes textbox y un data vinculandolo a la base de datos y a la tabla que deseas eligiendo el campo??

Buenos dias SR._(text1.text)_ de la calle ._(text2.text)_

Asi utilizarias la misma carta para todos tus registros. Solo lo vas recorriendo al que quieras o crea un boton de busqueda para que te encuentre el registro que quieras.

Saludos.