ejemplos - vba access pdf
Filtrar una consulta de informe (1)
Sigue siendo un programador de acceso inicial aquí. Intentando que el informe funcione. Esto es lo que estoy haciendo
Primero creé un informe usando el Asistente de informes usando la siguiente consulta como entrada
SELECT EmployeeId, Project, StartDate
FROM Tasks;
Tengo un formulario en el que selecciono el ID de empleado. Quiero filtrar el informe según la identificación del empleado seleccionada. Esto es lo que tengo para invocar el informe
DoCmd.OpenReport "rptEmpWork", acViewPreview, "qryEmpReport", "EmployeeId = " & strempid
qryEmpReport es el nombre de la consulta que contiene la consulta del informe que mencioné anteriormente. El strempid contiene el valor que se seleccionó en el formulario. Sin embargo, cuando me muevo para ejecutar esto, me induce a ingresar de nuevo la identificación del empleado. ¿Alguna idea de por qué estoy recibiendo esto? He validado para asegurarme de que strempid contiene el valor seleccionado anteriormente.
Supongo que Tasks.EmployeeId
es tipo de datos de texto. Si mi conjetura es correcta, agregue cotizaciones alrededor del valor que usted proporciona para EmployeeId
:
DoCmd.OpenReport "rptEmpWork", acViewPreview, "qryEmpReport", "EmployeeId = ''" & strempid & "''"
De acuerdo con nuestro ejercicio de solución de problemas en los comentarios, creo que debería tener la oportunidad de examinar el valor de cadena real que le está dando a OpenReport
para su argumento WhereCondition . (Es mejor ver la cadena actual en lugar de tratar de imaginar cómo se ve).
Dim strWhereCondition As String
strWhereCondition = "EmployeeId = ''" & strempid & "''"
Debug.Print "strWhereCondition ->" & strWhereCondition & "<-"
DoCmd.OpenReport "rptEmpWork", acViewPreview, "qryEmpReport", strWhereCondition
Ver el resultado de Debug.Print
en la ventana Inmediato; Ctrl + g te llevará allí.