Validar si el registro existe antes de guardar

Tengo una tabla con un numero de oficio

Lo que quiero es que si voy a guardar otro oficio y ya esta duplicado ese numero no lo guarde, que me mande un mensaje: No: de oficio duplicado

Y si el No de oficio no exista lo guarde con este código

DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO LIBRETA(NOOFICIO,CLAVE)VALUES('" & No1 & "','" & PLAZA1 & "');"
DoCmd.SetWarnings True

1 respuesta

Respuesta
3

Puedes hacerlo con este código:

If DCount("*","LIBRETA","NOOFICIO=" & No1)>0 Then

Msgbox "No: de oficio duplicado",vbInformation,"ERROR"

Else

CurrentDb.Execute "INSERT INTO LIBRETA(NOOFICIO,CLAVE)VALUES('" & No1 & "','" & PLAZA1 & "');"

End If

El código lo pones en el evento "al hacer click" de un botón, o si no tienes botón para guardar, en "antes de actualizar" del formulario.

Saludos.


Muchas gracias por la ayuda

Me da error 3464

No coinciden los tipos de datos en la expresión de criterio

¿A qué se deberá?

Ponlo así, pensé que número de oficio era un número y no un texto...

If DCount("*","LIBRETA","NOOFICIO='" & No1 & "'")>0 Then

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas