Como puedo combinar un documento word con access

Tengo un problema que no se como lo tengo que resolver. Estoy desarrollando una aplicación en Access 2000 para la gestión de cooperativas de viviendas. En cada cooperativa tenemos unos clientes( cooperativistas) que realizan unas compras (viviendas) para las cuales hace falta que firmen un contrato. Este contrato me gustaría que estuviese en MsWord, dejando los datos correspondientes a los cooperativistas en blanco, datos como su nombre, apellidos, dni, datos de la vivienda adquirida, etc... Este documento sería como una plantilla. Realizaría un formulario donde rellenar todos los datos para la compra de la vivienda y con esos mismos datos, al pulsar un botón, ¿tendría qué aparecer el documento de word con el contrato escrito y con los datos previos del cooperativista seleccionados en el formulario... Cómo narices hago esto? ¿Sería mejor utilizar los informes de Access? Me urge un poco. Muchas gracias. Antonio.

1 respuesta

Respuesta
1
Lo puedes hacer de las dos formas que planteas:
1.- Creando un Informe basado en una consulta a la cual pasamos los parámetros desde un formulario. El formulario seria independiente (o no) y los parámetros en la celda Criterios de la consulta quedarían así: [Forms]![MiFormulario]![MiCampo] En principio, si tu tabla tiene un IDCliente solo seria necesario pasarle este criterio a la consulta.
Esta opción seria buena para el caso de que vayamos a usar una hoja preimpresa, con lo cual el informe solo tendría que imprimir datos.
2.- Desde MS Word, en el menu combinar correspondencia (Origen de datos seria Abrir el Origen de tu base de datos), creo que no hace falta que me extienda sobre este caso ya que es fácil de llevar a cabo. Personalmente es el que yo adoptaría pero usando MS Query, ya que es posible que si la tabla/consulta que uses es muy extensa al Word se le haga pesado, usando MSQuery podemos definir criterios sobre la tabla de una forma flexible.
Pero ¿no podría hacer un formulario con un botón que al pulsarlo te ejecutase el fichero de word donde está el contrato escrito y que apareciesen los datos pertenecientes al cooperativista que hace la compra?
No se si me explico...
Gracias.
Esto seria solo el principio:
Function RunWordMacro()
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Set WordApp = CreateObject("Word.Application")
Set WordDoc = WordApp.Documents.Open _
("C:\Mis Documentos\Doc1.doc")
WordApp.Visible = True
' Uncomment the next line of code to print the document.
' WordDoc.PrintOut Background:=False
' Uncomment the next line of code to save the modified document.
' WordDoc.Save
'quitar el comentario para cerrar sin guardar
' WordApp.Quit SaveChanges:=wdDoNotSaveChanges
Set WordApp = Nothing
End Function
...
La verdad es que si existe una .mdb (en alemán) que hace exactamente eso que dices (en realidad son dos botones), pero creo que seria muy extenso de explicar aquí su funcionamiento. Por otro lado, la copia que tengo esta en la versión 8.0 y acabo de convertirla a la 9.0, o sea, que aún me estoy peleando con el código. Puedes encontrar OBD WordBrief - Wordbrf.zip en:
http://www.freeaccess.de/downloaddetails.asp?id=18
Creo que más fácil todavía es seleccionar la tabla/consulta donde tienes los datos que quieres combinar con Word y picarle al botón de la barra de herramientas, solo hay que seguir dos pasos para tener un documento de combinación listo en MS Word (el asistente de access para combinar es diferente al de word).
NOTA: siento no poder darte una solución más simple de lo propuesto hasta ahora, la verdad es que lo de la base de datos Wordbrf son casi 2000 líneas de código y si, el resultado final es el que tu pides. Prometo colgarla en el web tan pronto la tenga lista y depurada.
Gracias por tu tiempo. Aplicaría la solución de seleccionar la tabla y picar el botón, pero la gente que va a trabajar con el programa necesita una solución más fácil. De corazón, gracias por tu ayuda.
Antonio

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas