Abrir Informe con cláusula WHERE

Estoy intentando imprimir un informe con origen en un formulario que me muestre 1º El paciente que tengo en pantalla y 2º Los datos introducidos en la fecha de hoy. He creado un procedimiento de evento con condición WHERE pero no me hace nada. Soy novata ¿alguien me puede ayudar?. Llevo días intentándolo pero no lo consigo ... He pegado de aquí y allá ...

Dim cadDocName As String
Dim cadFilter As String
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
cadDocName = "Pacientes"
cadFilter = "Idpaciente = Forms!Pacientes!Idpaciente"
srtWhere = "[Fechaconsulta]=[Fecha()]"
DoCmd. OpenReport cadDocName, acPreview,, cadFilter, srtWhereP

1 Respuesta

Respuesta

a ver que tal así:

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.OpenReport "Pacientes", acPreview, , "Idpaciente =" & Forms!Pacientes!Idpaciente & " AND [Fechaconsulta]=" & Date()

Muchas gracias por tu respuesta Sveinbjorn, pero ahora no me saca ningún registro, ni siguiera el resto de datos como por ejemplo el nombre. Tendrá algo que ver el formato de fechas???

Puede que sí tenga que ver el formato de fechas, inténtalo así:

DoCmd.OpenReport "Pacientes", acPreview, , "Idpaciente =" & Forms!Pacientes!Idpaciente & " AND [Fechaconsulta]=" & Format(Date,"dd/mm/yyyy")

o tambien puedes probar esta otra sintaxis:

DoCmd.OpenReport "Pacientes", acPreview, , "Idpaciente =" & Forms!Pacientes!Idpaciente & " AND [Fechaconsulta]=#" & Date & "#"

Otra opción que tienes, es hacer una consulta como base del informe, y en los criterios de los campos IdPaciente y FechaConsulta les pones: [Formularios]![Pacientes]![Idpaciente] y Fecha() (o Ahora())

Te confirmo que la segunda opción (la que lleva las almohadillas (#)) funciona correctamente. Y la alternativa de la consulta, también.

Te dejo aquí una mini-BD de prueba para que lo veas: http://filebig.net/files/bidBcGeVjm 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas