Impedir ingresar una fecha anterior a la del anterior registro en access

Y espero que me podáis ayudar en este tema como en anteriores consultas que he realizado por este foro. Gracias de antemano por vuestro interés.

Os explico, tengo una tabla TAsociados que entre otros campos tiene un campo llamado Nº REGISTRO (que es un autonumérico), un campo fecha llamado FECHA_IS (donde se indica la fecha de alta del asociado). Además, tengo un formulario ForAlta dependiente de TAsociados.

La pregunta es cómo, al dar de alta a un nuevo asociado, por ejemplo el Nº REGISTRO 2235, se impida que la fecha de inscripción pueda ser anterior a la fecha de inscripción del socio 2234.

2 Respuestas

Respuesta
2

Puedes poner, en el evento "Antes de actualizar" del cuadro de texto FECHA_IS algo como esto:

If Me.Fecha_IS < DLookUp("FECHA_IS","TAsociados", "[Nº REGISTRO]=" & DLast("[Nº REGISTRO]","TAsociados")) Then
Msgbox "Fecha de alta incorrecta"
Cancel=True
End If

Si te dan problema las fechas, aplícales formato americano con la función Format()

Un saludo.


http://nksvaccessolutions.com/academy/ 

¡Gracias! Muchas gracias por tu interés y pronta respuesta. Comentarte que el código funciona correctamente, sin ningún problema.

De nuevo agradecerte tu ayuda con esta pregunta y todas las anteriores con las que me has ayudado.

Un saludo

Respuesta
2

Angel: Yo programaría el Evento BeforeUpdate (Antes de Actualizar) del Control Fecha_Is

Algo así:

Private Sub Fecha_Is_BeforeUpdate(Cancel As Integer)
Dim LaFechaMax As Date
On Error GoTo Fecha_Is_BeforeUpdate_TratamientoErrores
'Capturo la Ultima (Maxima Fecha que hay en la Tabla TAsociados)
LaFechaMax = DMax("Fecha_Is","TAsociados")
If Me.Fecha_Is < LaFehaMax Then
        MsgBox "Esta Fecha es menor, que la mayor en la Tabla TAsociados........" & vbCrLf & "Repasa la entrada e intenta de nuevo", vbCritical, "FECHA ERRONEA"
        DoCmd.CancelEvent
        Me!Fecha_Is.Undo
End If
Fecha_Is_BeforeUpdate_Salir:
On Error GoTo 0
Exit Sub
Fecha_Is_BeforeUpdate_TratamientoErrores:
MsgBox "Error " & Err & " en Procedimiento.: Fecha_Is_BeforeUpdate de Documento VBA: Form_ForAlta (" & Err.Description & ")", vbCritical + vbOKOnly, "ATENCION"
Resume Fecha_Is_BeforeUpdate_Salir
End Sub

Un saludo >> Jacinto

¡Gracias! Muchas Gracias por tu interés y pronta respuesta, comentarte que el código  no corre correctamente, en un principio creí que era los Fecha_Is, los cambié por FECHA_IS, el nombre correcto del campo fecha,  pero aún así no corre bien. No se me ocurre donde puede fallar.

Un saludo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas