Que solo afecte al registro que cumpa el requisito

La instrucción no te sirve de nada, ya que en un formulario continuo todos son el registro activo. En vista diseño del formulario Haz clic sobre el cuadro Fecha, y en la barra de menús pulsa Formato-Formato Condicional. En el cuadro de la izquierda deja lo de El valor del campo es. En el segundo selecciona Mayor que y en le cuadro de la derecha pon Fecha() y elige el color que quieras que coja de fuente, fondo, etc.

1 respuesta

Respuesta
1
Debajo de docmd...
Escribe
Form.requery
Si, eso había hecho. Luego ya he visto que me llegaba tu mail. Muchas gracias por tu ayuda ;)
Tengo un campo fecha el cual se pone en rojo si la fecha de hoy es mayor. Lo tengo en un form continuo mostrando muchos registros. Lo malo es que aunque solo el primer registro sea el que cumple con eso, se me ponen todos los registros mostrados en rojo en el form continuo. Como podría hacer para que solo afectase dicha a acción a los registros que cumplieran el motivo para ponerse en rojo.
Por ejemplo si en el formulario continuo se me muestran 50 registros a la vez y es el primero el que la fecha es menor, no solo se pone en rojo ese, si no los 50. Como puedo hacer para que solo se ponga en rojo, ¿el qué deba ponerse?
La función es muy simple, es
If hoy > fecha Then
Me.fecha.ForeColor = RGB (255,0,0)
end if
¿Por cierto puedo cambiar el color al campo en vez de al texto solo? Todo por código digo. Si ForeColor es el texto, ¿cómo es el campo?
No me sirve eso, porque los valores tienen que ser más concretos.
Rojo = 2 dias mayor que Fecha()
Verde = 1 dia mayor que Fecha()
Basta con poner que el campo sea mayor que Fecha()+2
Luego pulsa el botón de agregar. Te añade otra condición y ahí le pones
El valor del campo es mayor que Fecha()+1 y eliges el clor verde
Si, ahora funciona. Muchas gracias!
Y dime, ya para acabar, como podría hacer para que cuando pasen 3 días, ¿me borre el registro en el formulario que tenga fecha de 3 días atrás Fecha()-3?
Por ejemplo imagina que tengo un registro en el form continuo que tiene fecha 26. Pues mañana abriría el form y ese registro habría desaparecido, pero no solo la fecha si no todo el registro que consta de campo fecha y otro campo. Y que el registro que estaba debajo se pusiese automáticamente encima (eso creo que se haría automáticamente al entrar, pero bueno). ¿Eso cómo lo puedo hacer?
Supongamos que el formulario depende de la tabla Ventas, que tiene un campo FechaVenta. En el evento Al abrir del formulario crea un procedimiento de evento y entre Private Sub y End Sub escribe
Docmd.runsql"delete * from Ventas where [fechaventas]=date()-3"
Así cuando se abra el formulario eliminará de la tabla Ventas todos los registros que tengan una fecha de tres días antes a la del sistema

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas