Clave principal repetida en access "aviso automático de duplicidad en formulario"

Estoy elaborando formularios en el cual la Clave Principal está asignada a un campo llamado: Expediente.

Lo que necesito es que en el momento de ingresar un nuevo registro, y si el digitador ingresa un número de Expediente ya repetido, en ese momento este de un aviso "Numero de Expediente ya existe", aunque Access muestra el este aviso de duplicidad de la Clave Principal lo hace hasta que voy a almacenar todos los campos del formulario y no puedo darme el lujo de dar el aviso hasta último por que es mucha la información que hay que ingresar y perderia mucho tiempo.

1 Respuesta

Respuesta
1

Con el formulario en vista diseño saca las propiedades del campo Expedinte-> Pestaña Eventos-> Después de actualizar, y ahí le generas este código:

...

Private Sub Expediente_AfterUpdate()
Dim yaExiste As Variant
yaExiste = DLookup("Expediente", "NombreTabla", "Id=" & Me.Expediente.Value)
If Not IsNull(yaExiste) Then
MsgBox "Ya existe",vbInformation,"COINCIDENCIA"
Me.Expediente.Value = Null
End If
End Sub

...

A ver si te sale.

Hola Amigo, perdona la tardanza en mi respuesta, pero he tenido inconvenientes con mi internet. Hice la prueba con el código que me has enviado, este me causa un errore en la línea:

Mi tabla se llama: Nutri_Ninos

yaExiste = DLookup("Expediente", "Nutri_Ninos", "Id=" & Me.Expediente.Value)

He estado tratando de eliminar las comillas, pero me causa el mismo error

Gracias

¿Por qué, cuando os salta un error, no indicáis el código y la descripción del error? En fin...

Suponiendo que el campo Expediente sea un campo de tipo numérico, intenta con esto:

yaExiste = DLookup("Expediente", "Nutri_Ninos", "Expediente=" & Me.Expediente.Value)

Y si se trata de un valor tipo texto, prueba con esto:

yaExiste = DLookup("Expediente", "Nutri_Ninos", "Expediente='" & Me.Expediente.Value & "'")

Neckkito

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas