Multiconsulta en reporte de Access

Tengo un botón, al presionarlo me pide un ID, al darle Aceptar, sale un reporte que tiene la información del ID, y una serie de datos relacionados. El funciona de manera genial.

Pero debo ir de uno en uno, me gustaría poder hacer que yo pueda indicarle varios ID, y al generar el reporte me tire el reporte con los respectivos datos de todos.

La verdad no me importa mucho si debo cambiarlo por un formulario o alguna otra cosa. Lo único que me interesa es tener el resultado que sólito.

1

1 respuesta

Respuesta
2

En tu botón ponle este código:
Dim miSeleccion As String
miSeleccion = InputBox("Escriba los IDs que desea mostrar separados por comas", "SELECCIONE IDs")
If StrPtr(miSeleccion) = 0 Then Exit Sub 'Si se pulsa "Cancelar" salimos
DoCmd.OpenReport "NombreInforme", acViewPreview, , "ID IN(" & miSeleccion & ")"

A ver si te sirve.

Hola compañero. Gracias por tu respuesta.

Pero no me funciona. Pasa esto, después de salir el mensaje de tu código, otra vez sale el mensaje de la consulta al que esta ligado el reporte y no sale nada en el reporte.

¿Alguna otra idea?

Borra el criterio que imagino tienes en la consulta y que te pide que escribas el ID.

Si esto no soluciona el problema, tendría que ver cómo tienes diseñada la consulta, el informe y/o el código para abrirlo (si no es similar al que te propuse)

Sabes que te agradeceria, que me expliques tu codigo. Asi tal vez pueda ver si solo debo variar algo en el.

El código no tiene nada:

Primero declaras un variable de texto (Dim miSeleccion As String)

Luego le asignas lo que escribas en el inputbox (miSeleccion=Inputbox...)

Con la siguiente linea compruebas si se pulsó el botón Cancelar del inputbox, en cuyo caso sales del procedimiento sin hacer nada.

Por último, abres el informe filtrado por los IDs que has seleccionado (y que están recogidos en la variable miSeleccion).

El truco está en hacer el filtro con el operador IN, para que te muestre la selección.

Si te interesa saber más sobre cada parte del código, en el editor de VBA, te colocas sobre la instrucción que quieras y pulsa F1, te saldrá la ayuda de access y normalmente con ejemplos de uso.

Aquí tienes un ejemplillo funcionando, con dos métodos.

¡Gracias!

Listo, lo que hice fue eliminar totalmente el reporte y la consulta, cree un reporte nuevo y monte tu código en el botón que manda al nuevo reporte y LISTO.

Muchas gracias por todo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas