Access - Correo Filtrado

 
Vista:

Correo Filtrado

Publicado por Daniel (74 intervenciones) el 26/09/2006 12:37:49
Hola,

Tengo un formulario Factura con un campo que es Nª Factura. En ese Formulario he creado un botón que al hacerle click abre un informe.

Ese informe tiene un campo con Nombre NumFAC.

Como puedo hacer para que al hacer click en el boton del formulario que llama al informe me muestre solo los que Nª Factura (formulario) = NUMFAC (informe).

Es decir, si estoy viendo la factura 001 cuando haga clck en el botón me abra el informe con los datos del 001.

Hasta ahora lo que he conseguido es que al hacer clck en el boton me pregunte que factura quiero ver y al pulsar 001 me muestra esa pero sería más comodo que si en pantalla tengo una factura y le doy al boton me muestre su informe directamente.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Abrir informe filtrado por Nº de Factura desde formulario

Publicado por Alejandro (4142 intervenciones) el 26/07/2023 00:07:14
Para lograr que al hacer clic en el botón del formulario de Factura se abra el informe con los datos correspondientes al número de factura que estás viendo en ese momento, puedes utilizar un parámetro en la consulta que alimenta el informe. De esta manera, pasarás el valor del número de factura desde el formulario al informe y se filtrarán automáticamente los datos.

A continuación, te explico cómo hacerlo:

1. Abre el informe en modo Diseño (Vista Diseño) en Access.

2. Asegúrate de que el informe tiene una consulta como origen de registros (consulta que recupera los datos necesarios para el informe).

3. En la consulta, agrega un criterio para filtrar los datos por el campo Nº Factura. Supongamos que el campo que almacena el número de factura en la tabla es "NumFactura", entonces el criterio sería algo como:

[NumFactura] = [Forms]![NombreFormulario]![Nº Factura]

Donde "NombreFormulario" es el nombre del formulario donde tienes el campo Nº Factura.

4. Guarda los cambios en la consulta.

5. Ahora, vuelve al diseño del formulario de Factura.

6. Haz clic derecho en el botón que abre el informe y selecciona "Crear un evento" -> "En clic".

7. En el editor de VBA que se abrirá, escribe el siguiente código:

1
2
3
4
5
6
Private Sub NombreBoton_Click()
    Dim NumFactura As Variant
    NumFactura = Me![Nº Factura]
 
    DoCmd.OpenReport "NombreInforme", acViewPreview, , "[NumFactura] = " & NumFactura
End Sub

Asegúrate de reemplazar "NombreBoton" por el nombre real del botón que abre el informe y "NombreInforme" por el nombre real del informe que quieres abrir.

Con este código, al hacer clic en el botón, se capturará el valor del número de factura en la variable "NumFactura" y luego se abrirá el informe filtrando automáticamente los datos por ese número de factura. No te pedirá el número de factura, sino que se mostrará directamente el informe relacionado con la factura que estabas viendo en el formulario.

Guarda y cierra el editor de VBA, y debería funcionar según lo esperado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar