Hola!
Supongamos que:
- El campo donde recoges la fecha de ingreso se llama [FechaIngreso].
- El informe se llama RSocios, y ese informe contiene [FechaIngreso]
En el formulario creas un cuadro de texto para poner la fecha de inicio. Sacas sus propiedades y:
- Pestaña formato -> Formato: fecha
- Pestaña otras -> Nombre, y ahí le escribes txtFIni
Añades otro cuadro de texto y le haces lo mismo, sólo que de nombre le escribes txtFFin
Añades un botón de comando y en el evento "Al hacer click" le escribes el siguiente código (te lo pongo sin controles de si hay algún textBox o los dos vacíos):
...
Private Sub...
Dim vIni as date, vFin as date
vIni = me.txtFIni.value
vFin = me.txtFFin.value
docmd.openreport "RSocios", acViewPreview,,"[FechaIngreso]>=#" & vIni & "# AND [FechaIngreso]<=#" & vFin & "#"
End sub
...
Échale un vistazo a los resultados porque a veces, según la configuración, Access trata las fechas con formato inglés aunque tú las veas con formato español. Si tuvieras problemas cambia la línea de docmd... por esta otra:
docmd.openreport "RSocios", acViewPreview,,"[FechaIngreso]>=#" & Format(vIni,"mm/dd/yy") & "# AND [FechaIngreso]<=#" & Format(vFin,"mm/dd/yy") & "#"
Con este código se abre el informe en vista preliminar porque, como argumento, he utilizado acViewPreview. Si lo quieres sacar directamente a impresora cambias ese argumento por acViewNormal.
Un saludo,
Neckkito (...
http://neckkito.eu5.org ...)