Para asegurarte de que al abrir el formulario se muestren solo los registros correspondientes a la fecha actual y evitar repeticiones de horas en los subformularios, puedes seguir estos pasos:
1. Agrega un control de texto en el encabezado del formulario principal y configúralo como "Cuadro de texto no editable" o "Etiqueta". Este control se utilizará para mostrar la fecha actual.
2. En el evento "Al cargar" del formulario principal, establece el valor del control de texto creado en el paso anterior utilizando la función "Date()" para obtener la fecha actual. Puedes hacerlo de la siguiente manera:
3. En los subformularios, configura un criterio en la consulta o en la propiedad "Origen del registro" para filtrar los registros por la fecha actual. Puedes hacerlo utilizando la función "Date()" en la cláusula "WHERE" de la consulta o en la propiedad "Filtro" del subformulario. Por ejemplo:
4. Si quieres evitar repeticiones de horas en los subformularios, puedes utilizar la propiedad "Validación de tabla" en la tabla subyacente de cada subformulario. Por ejemplo, puedes configurar un campo "Hora" como clave principal y establecer la propiedad "Duplicados" en "No" para evitar registros con la misma hora.
Estos pasos te ayudarán a abrir el formulario con los datos de la fecha actual y evitar repeticiones de horas en los subformularios. Asegúrate de ajustar los nombres de los controles y los nombres de los subformularios según corresponda en tu base de datos.