Guardar un documento PDF abierto desde access

Creo que es necesario clarificar un poco el titulo de la pregunta: la idea no es crear un documento PDF desde un informe de MS Access para después guardarlo, si no guardar un documento PDF ya existente que esté abierto en un visor (Acrobat Reader) en un directorio concreto mediante un código VBA.

Aclarado este punto, paso a detallar un poco mas el caso. Estoy diseñando un base de datos en MS Access 365 en la que he incorporado un código (que he encontrado en la web) en un módulo de VBA, que permite autorellenar un formulario existente en un archivo pdf (externo) cogiendo los datos de una tabla de la base de datos. El código que crea sirve para rellenar el formulario PDF y abrirlo al finalizar utiliza el API de Windows. Funciona bien (no da errores) pero al rellenar con los campos de un registro, no guarda el archivo, sino que pasa a sobrescribir el mismo formulario pdf con los datos del siguiente registro, y así hasta llegar al final de la tabla, con lo que al finalizar el proceso solo tengo el formulario pdf abierto con los datos del ultimo registro. Lo que necesitaría es que se guardara un PDF para cada registro, de forma que si la tabla tiene tres registros al finalizar se hayan generado 3 documentos PDF con los datos de cada uno (si además la generación y el guardado de los PDF la hace sin abrir cada documento, seria genial).

No sé si esto es posible.

1 Respuesta

Respuesta
1

Si la idea consiste en rellenar un PDF y guardarlo, una alternativa es hacer una copia (al copiarlo se le puede indicar el nombre y donde ubicarlo) y tras ello editar (rellenar) la copia recién creada.

Al no modificar el original, registro a registro se repite el ciclo para (al final) tener todos los PDFs creados y cumplimentados en el directorio de destino.

Con la función Copy se crea el nuevo en el destino, con la función Name se le cambia el nombre (y también se le puede cambiar la ubicación) el resto ya existe y es funcional.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas