Programación General > Visual Basic 6.0 e inferiores
Combinar Con Word Desde Visual
(1/1)
pacegar:
Hola a todos!
Necesito poder combinar una tabla desde mi aplicacion con una carta de word.
Alguien sabe como hacerlo?
Gracias
Brroz:
Hola pacegar.
Empieza por añadir al proyecto la correspondiente referencia a Word (también podrías utilizar CreateObject / GetObject)... luego examinador de objetos y a investigar.
Básicamente supongo que se tratará de obtener una referencia a un objeto Document, utilizar el método Add de su miembro Tables para añadir una nueva tabla y a partir de ahí, rellenar los datos de la tabla, supongo que mediante un objeto de tipo Range, esto último nunca lo he probado, pero imagino que por ahí van los tiros.
Suerte.
pacegar:
Por si a alguien le interesa
--- Código: Text --- 'Abrir documento existente con la plantilla ya creada, o sea con los campos insertadosDocuments.Open "c:\prueba.doc", , , , , , , , , , , True ' Así nos aseguramos de que el documento apunte a la base de datos (RUTAMDB)ActiveDocument.MailMerge.OpenDataSource Name:=RUTAMDB, ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, Connection:="Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=”+RUTAMDB+”Mode=Read;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Pass", SQLStatement:="SELECT * FROM `Tabla1`", SQLStatement1:="", SubType:=wdMergeSubTypeAccess ' Actualizamos (creo que no hace falta)ActiveDocument.Fields.Update
De todas formas, un truco que he descubierto:
Cuando quieran hacer algo en office desde Visual basic con código y no sepan... desde la aplicacion de office poner grabar una macro y en esta se quedarán registradas todas las acciones (con codigo). Sólo basta verlas en el editor que de VBA.
Navegación
Ir a la versión completa