Qué Instrucción en B.D.Access me permite abrir un Reporte mediante un doble filtro?

Necesito filtrar un Reporte mediante el campo "Curso" y "Division" (ambos string). Este Reporte toma los registros de una Consulta que ya está filtrada por Alumnos que adeudan pagos a la Cooperadora Escolar. Deseo que el Reporte pueda ser solicitado por curso y Division. ¿Es posible hacerlo? ¿Mediante qué instrucción puedo aplicar un doble filtro?. Solo me toma un filtro (Curso), cuando hago el segundo (Division), me sale ERROR. Estaré muy agradecido por algunas indicaciones.

2 respuestas

Respuesta
2

Si sabes cómo abrir un informe filtrado con una condición o criterio (con DoCmd. OpenReport), hacerlo con dos o más es lo mismo, solo has de encadenar las condiciones con el operador adecuado (AND o OR) según lo que quieres.

Por ejemplo:

DoCmd.OpenReport "elInforme",,,"Curso='Cocina' AND Division='A'"

Un saludo


Respuesta
1

La idea es que tengas en un formulario 2 controles, uno que haga referencia al Curso y otro para la división, supongamos que tienes una tabla tblCursos con los campos IDcurso, curso, con esta creas un cuadro combinado, llamalo cboCursos. Ahora, digamos que tienes la tabla tblDivisiones con los campos IDdivision, division y crea un cuadro combinado con ésta tabla, dale en nombre cboDivision.

En el botón donde llamas el reporte adiciona lo siguiente:

Dim strCurso, strDivision AS String

Dim strCriterio AS String

if not isnull(me.cbocurso) then

  strCurso=Me.cboCurso

  exit sub

end if

if not isnull(me.cboDivision) then

  strDivision=Me.cboDivision

exit sub

end if

strCriterio="IdCurso=" & strCurso & " AND " & "IdDivision=" & strDivision

Algo como:

Docmd. OpenReport "rptALGO",,,, strCriterio

Ahora en la instrucción del reporte en la sección de criterio coloca strCriterio.

NOTA: Esta es la forma más profesional de limitar la información de una consulta o tabla para un reporte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas