Hola amigos, mi problema es el siguiente, no tengo muchos conocimientos de access, he realizado una tabla compuesta de dos columnas en una esta el nombre de unos productos y en la otra la fecha de caducidad.Me gustaría que a través de un formulario yo pudiera introducir una fecha inicial y otra final y que me sacase un listado, en el propio formulario ( en una caja o en excel), de los productos que caducan entre esas fechas y la fecha en que caducan. Muchas gracias de antemano por vuestro tiempo.
Crea un formulario nuevo sin el asistente al que llamaremos FRMCADUCA Crea dos controles de texto independientes llamados por ejemplo fechainicial y fecha fianal (esto lo puedes ver en las propiedades del control) y un botón de comando llamado por ejemplo listar. Ahora, una vez hecho lo anterior, vamos a realizar un consulta sobre la tabla que contiene los datos: Vamos a suponer que la tabla tiene los siguientes campos: Nombreproducto (Texto) FCaducidad (Fecha) Puedes utilizar el asistente para consultas sencillas, seleccionando la tabla y pasando los campos. Con esto verás el listado completo sin filtrar, para filtrarle vamos a decirle que el campo FCaducidad (o como se llame) está entre la fecha introducida en el cuadro fechainicial y el cuadro fechafianal. Para eso debes realizar lo siguiente: En los criterios del campo FCaducidad pones: Entre Forms![frmcaduca]![fechainicial] Y Forms![frmcaduca]![fechafinal] Si ejecutas la consulta te pedirá que le introduzcas los valores. Guardala como cscaducidad Vamos a lanzar la consulta desde el formulario para lo que necesitamos crear un procedimiento de evento. En las propiedades del botón listar tienes una pestaña llamada eventos, selecciona Al Hacer Click (es decir al presionar el botón) y selecciona una de estas opciones: Generador de código Generador de Macros Si no estás familiarizado con visual basic te recomiendo Generar una Macro. Mediante código coloca lo siguiente entre Private Sub y End Sub: DoCmd. OpenQuery "cscaducidad" Mediante una macro: En la columna de acciones dile: Abrir Consulta y selecciona el nombre de la consulta Guarda la Macro con el nombre que quieras. Al cerrar tanto la macro como el código volverás a las propiedades ciérralas y cierra el formulario guardando los cambios. Abre el formulario normalmente y prueba a introducir las fechas y presionar el botón y verás los resultados. Esta es la manera más sencilla ya que desde esta consulta podrás crear un informe. En cuanto a tu pregunta para mostrar los datos en un formulario o exportarlos a Excel: Para mostrarlos en un formulario: Sigue los primeros pasos para crear un formulario con las dos cajas de texto y el botón de comando. Luego crea un formulario en vista hoja de datos o continuo a partir de la tabla para que muestre los datos al que llamarás FRMFILTRADO. En el procedimiento de evento del botón listar del formulario FRMCADUCA haz lo siguiente (para simplificar lo haré mediante una macro): Abrir Formulario Nombre Formulario FRMFILTRADO Condición Were [FCaducidad] Entre Forms![frmcaduca]! [fechainicial] Y Forms![frmcaduca]![fechafinal] Con esto filtras el resultado que muestra el formulario. Exportar a Excel: Las consultas, tablas, informes se pueden exportar al formato de Excel; igualmente se pueden importar los datos desde la Base de datos. Espero que esto resuelva tus dudas y si lo crees conveniente cierra la pregunta