Exportar tabla de access a varios pdfs

Tengo una tabla que cuenta con las siguientes columnas id_usuario, genero, email, teléfono. Donde los id_usuarios son únicos.
Ahora supongamos que yo tengo "x" géneros distintos(varón, mujer, trans, etc) yo lo que quisiera es que el access me devuelva "x" pdf, es decir un pdf para cada genero posible con los id_usuario, genero, email, teléfono. Es decir que si mi tabla original cuenta con 100 registros y tengo 5 géneros posibles entonces la macro me debería devolver 20 pdfs

¿Cómo lo podría configurar en visual basic?

Pd: la tabla que cree es ficticia, pero si me explican como hacerla con eso ya me las ingenio. Otro dato seria que la tabla original cuenta con 300mil registros y el access debería escupirme entre unos 4000 y 5000 pdfs/tablas 

1 Respuesta

Respuesta
2

Vamos a ver Matías. ¿Cuándo vas al médico le dices Mire que me duele la espalda y cuando te la está mirando le dices, bueno en realidad no es la espalda, es que no me encuentro bien? Aquí se responde a casi todo, pero como no digas exactamente lo que quieres, es difícil decir algo. Hablas de 4000 ó 5000 pdf. ¿Es qué hay tantos géneros de personas? ¿Cómo se agrupan esos 300.000 registros?. Aunque crear cada PDF tarde sólo 2 segundos(dependiendo del ordenador), estamos hablando de casi 200 minutos.

Mira si tengo el formulario, donde figuran 21 países, le voy a decir que me exporte a una carpeta llamada PDF el informe de los clientes de cada país con su nombre

Cuando pulso el primer botón se va al primer registro, abre el informe de los clientes de ese país, lo guarda como, por ejemplo, Alemania.Pdf y se va al siguiente registro, hace lo mismo, y así hasta el final. En este caso el informe sólo tiene dos cuadros de texto y mi ordenador es un i7 y ha tardado 14 segundos. Calcula.

Y cada PDF, como te dije sencillo, es

El código del botón es

Private Sub Comando3_Click()
Dim i As Integer
DoCmd.GoToRecord , , acFirst
For i = 1 To Me.Recordset.RecordCount
DoCmd.OpenReport "clientes", acPreview, , "pais like '" & Me.Pais & "'"
DoCmd.OutputTo acOutputReport, "clientes", "PDFFormat(*.pdf)", "C:\users\gonza\documents\borrar\PDF\" & "" & Me.Pais & "" & ".pdf"
DoCmd.Close acReport, "clientes"
DoCmd.GoToRecord , , acNext
Next
End Sub

HOLA, gracias por tu respuesta!

exactamente eso que vos lograste es lo que yo necesitaría conseguir.

veo que utilizas un formulario y un informe, estuve intentando replicar y no pude jajaj, disculpa por no explicarme bien!

https://drive.google.com/file/d/1th4wZgXsMQ68jQ9tZbAlZgfiCeprEfHM/view?usp=sharing 

esa seria la tabla al día de hoy! la cuestión es que yo debería correr el proceso una vez por mes. Al día de hoy con esa tabla me debería arrojar 1243 pdfs ya que hay 1243 CUE'S  distintos pero el mes próximo la tabla va a contar con mas registros y seguramente nuevos CUE'S. mas o menos estimo que para diciembre me debería arrojar unos 4000 o 5000 pdfs ya que la tabla va a contar con 350mil registros y unos 4000 o 5000 cues distintos

gracias nuevamente, seguiré probando replicar tu ejemplo! super valiosa tu ayuda realmente

Primero en la tabla no veo ningún campo con fecha. Segundo, da igual los que haya, lo que importa es con que se agrupa. He hecho una tabla con 11.000 registros, cada uno con una fecha. Tercero, el problema fundamental e inevitable de las tablas es que no tienen código, por tanto si le dices que te envíe la tabla como PDF te va a mandar los 11.000 registros.

Si construyo un formulario con un combinado, donde selecciono el mes y el año de la FechaVenta

Cuando elijo Agosto del 2019

Primero, me abre el informe sólo con los registros que tengan ese mes y año

Y salen 44 páginas

Acto seguido me lo guarda como PDF donde yo le diga y con el nombre que yo

 le diha

Y tercero, en el pdf sólo aparecen los registros de ese mes.

Que luego elijo otro mes, pues haría lo mismo guardándolo en la carpeta con el nombre que quisiera.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas