Verificar fecha a través de un formulario

Tengo una BD que tiene tres campos y una de ello es una fecha, necesito consultar si la fecha que introduzco en un formulario existe en la BD, de existir debe inidcarme que la fecha existe y salir del procedimiento. Para estos he realizado el siguiente código:

Private Sub cmdCargaSaldo_Click()
Dim FechaCierre As Date
FechaCierre = InputBox("Introduzca una Fecha", "FECHA DE CIERRE")
    If DLookup("Fcha_Saldo", "Saldo_Final", "Fcha_Saldo = #" & FechaCierre & "#") = False Then
        DoCmd.OpenForm "fCargaSaldo", , , , acFormAdd
        Forms!fCargaSaldo.Fcha_Saldo.Visible = True
        Forms!fCargaSaldo.lblFchaSaldo.Visible = True
        Forms!fCargaSaldo.sfSaldo_Final.Visible = True
        Forms!fCargaSaldo.Fcha_Saldo.Value = FechaCierre
        DoCmd.Close acForm, Me.Name
    Else
        MsgBox "La fecha ingresada ya existe", vbOKCancel, "Intente de Nuevo"
    End If
End Sub

Por favor, la ayuda que necesito es que digan porque no funciona, estoy dando mis primeros pasos en VBA Access.

Respuesta
2

Angel: Que yo sepa DLookup devuelve un Null si no encuentra el Registro, en lugar de False.

Como primera medida te sugiero usar el DCount, de ésta manera.

If Nz(DCount("Fcha_Saldo", "Saldo_Final", "Fcha_Saldo = #" & FechaCierre & "#"),0) = 0 Then

Es posible que haya que formatear la fecha como tipo americano, pero prueba así y si no te soluciona el problema, mañana haré alguna prueba, porque ésta noche ya es tarde aquí.

El resto del código no lo he analizado. Mis saludos << Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas