Access: Seleccionar registros de un listbox para imprimir

Nuevamente molestando. Quisiera que me ayuden con este problema. Como dice el titulo, estoy buscando la manera de seleccionar uno o varios registros de un listbox y enviarlos a un informe para imprimirlo/s. He leído por ahí, que puedo hacerlo de varias maneras, mediante un campo Si/NO, haciendo de múltiple selección mi cuadro de lista, con una casilla de verificación, etc; las he probado y no se en que estoy fallando. En realidad, solo quiero imprimir un campo de esos registros, obviando demás datos.

1 respuesta

Respuesta
1

Carlos: En ésta Página

https://sites.google.com/site/jerrmex/descargas 

El ejemplo 84 creo que va exactamente de lo que necesitas.

Mis saludos >> Jacinto

Hola Jacinto. Gracias nuevamente. Disculpe la demora. He cambiado el código que Ud. me ha mencionado, pero no me dio resultado. Creo que con la resolución de este problema, ya finalizaría con el proyecto. Aquí dejo el código para que me ayude, o me guíe en mi error. (Lo que yo quiero es mostrar el Id junto con una imagen que acompaña el registro). En el ejemplo que Ud me ha mencionado, sale una tabla aparte llamada "wPaso", yo la he reemplazado por una que se llama wDatos y tiene los campos Id, Apellido, DNI e Impreso (Si/No). Gracias de antemano y nuevamente me disculpo por el tiempo. Saludos.

Private Sub btn_imprimir_Click()
'Limpia la tabla de wDatos
vSql = "DELETE wDatos.* FROM wDatos"
EjecutaDoCmd

'determina cuales registros están marcados para ser impresos
For Each mvariant In lst_fichas.ItemsSelected
vSql = ""
vSql = "INSERT INTO wDatos ( [Id], Apellido, DNI) " _
& "SELECT DatosPersonales.[Id], DatosPersonales.Apellido, DatosPersonales.DNI" _
& "FROM DatosPersonales " _
& "WHERE DatosPersonales.[Id] = " & Me.lst_fichas.ItemData(mvariant) & ""
EjecutaDoCmd
Next mvariant
'genera el reporte
DoCmd.OpenReport "Reporte1", acViewPreview
'marca en la tabla los ya impresos
For Each mvariant In lst_fichas.ItemsSelected
vSql = ""
vSql = "UPDATE DatosPersonales SET Impreso = -1 WHERE DatosPersonales.[Id] = " & Me.lst_fichas.ItemData(mvariant) & ""
EjecutaDoCmd
Next mvariant
'desmarco de la lista los registros que estan marcados
For i = 1 To Me.lst_fichas.ListCount - 1
Me.lst_fichas.Selected(i) = False
Next i
Me.lst_fichas.Requery
End Sub
______
Sub EjecutaDoCmd()
With DoCmd
.SetWarnings False

.SetWarnings True
End With
End Sub

Carlos: de entrada me parece ver incongruencias en tu Código dependiendo del Tipo de Datos de tus campos.

No obstante, como desconozco el tipo y tu estructura, igual nos pasamos días llenando páginas con el riesgo de no acertar.

Así, te sugiero que pongas tu BD aquí en un enlace con datos distintos a los reales, si éstos son confidenciales e intento devolvértela con el Código madificado.

Además puedes recibir otras respuestas y elegir la que mejor se ajuste a ti.

Espero tu respuesta. Saludos >> Jacinto

Buenas nuevamente Jacinto. He estado intentado probar de mil maneras, pero no he logrado resolver el problema. Aqui dejo el link con las ayudas que me han dado: https://www.dropbox.com/s/9y2efmpk6ygkr5b/ImprimirImagenesdeSeleccionados.rar?dl=0 

La idea es que al seleccionar varios registros y presionar sobre el botón imprimir, se abra el informe, SOLO con las imágenes de los seleccionados.

Gracias por prestar su tiempo en intentar ayudarme. Saludos

Carlos: Justo acabo de bajarme tu BD, pero ya es tarde aquí en España. Mañana tengo el día muy cargado, de modo que espero enviarte el Fichero modificado entre el Viernes y sábado, si veo que antes no te ha resuelto el Problema otro Experto. Mis saludos >> Jacinto

Carlos: He podido dedicar un tiempo a tu BD, y aquí tienes el resultado, que espero sea el que esperabas.

http://www.mediafire.com/download/jaivmlhqj6s10oj/ImprimeImagenesSel.rar 

Verás que te he puesto 2 columnas en el Informe. Tu lo pasa a 1 o lo amplias a más según tu necesidad. Mis saludos >> Jacinto

Excelente!!! Mil gracias Jacinto. No me había dado cuenta que debía insertar código en el detalle del reporte igual. Solo tres preguntas más: ¿Como puedo hacer para que las imágenes se muestren en el Informe una al lado de la otra y no hacia abajo?¿Es correcto que se visualicen con baja resolución? Y finalmente, he notado que ahora al hacer doble clic en algún registro del listado, me informa de un error 3075. Eso me sucede desde que modifique la múltiple selección en el cuadro de lista. ¿Puedo solucionar este problema?. Gracias por tu tiempo, eres realmente un experto en esto y estoy totalmente agradecido.

Aquí adjunto las imágenes de mi ultima inquietud:

Saludos

Carlos: Eso del tres en 1 es para quitar el Oxido, lo de las preguntas debería de ser 1 a 1.

Pero bueno pase por ésta vez.

1.- Si quieres ver más imágenes en Horizontal, configura u informe así, con las columnas que te quepan.

Después si quieres que vayan de Izquierda a Derecha o de arriba a abajo en Configurar Página eliges como quieras.

2.- La resolución dependerá de dos factores. De un lado la de la propia imagen y después la resolución lon la que tu la quieras imprimir.

3.- Ignoro de donde pueda venir ese error, porque no veo ningún Evento de doble Click sobre el ListBox. Es posible que el Id no exista, o que el Nombre lst_Fichas no sea correcto, o que siendo cierto no contenga Id.

Mis saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas