Access - alguiem sabe

 
Vista:
sin imagen de perfil

alguiem sabe

Publicado por Enrique (14 intervenciones) el 28/04/2005 16:08:14
Hola a todos.
Estoy tratando de crear una macro para que me avise cuando duplique un dato pero este me avisa en el instante en que capturo el numero no hasta que termino de capturar todos los datos pero no puedo.
al insertar la condicion en una macro me cambia los datos por ejemplo yo pongo el siguiente codigo en condicon

DLookup("[CustomerID]", "[Customer2]", "[CustomerID] = Form.[CustomerID]")Is Not Null

y me lo cambia automaticamente por este otro

DBúsq("[CustomerID]","[Customer2]","[CustomerID] = Form.[CustomerID]") Es Negado Nulo

espero que alguiem me pueda ayudar si no es con este macro espero que me den otro tip para llegar al mismo resultado que quiero

de antemano gracias
un saludo desde México
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Validar duplicados durante la captura de datos

Publicado por Alejandro (4142 intervenciones) el 01/06/2023 22:44:26
Para crear una macro que verifique si se ha duplicado un dato durante la captura, puedes seguir estos pasos:

1. Abre el formulario donde estás capturando los datos y ve al diseñador de macros de Access.

2. Crea una nueva macro y establece el evento "Después de actualizar" en el campo donde deseas verificar los duplicados.

3. Agrega una acción "Buscar registro" en la macro y configúrala de la siguiente manera:
- En la propiedad "Nombre de la tabla", selecciona la tabla donde deseas buscar los duplicados.
- En la propiedad "Campo: Nombre", selecciona el campo específico que deseas verificar (por ejemplo, CustomerID).
- En la propiedad "Criterios", ingresa la expresión para buscar duplicados. Por ejemplo, "= Forms![NombreDelFormulario]![NombreDelCampo]".

4. Agrega una acción "Mostrar mensaje" en la macro y configúrala de la siguiente manera:
- En la propiedad "Mensaje a mostrar", ingresa el mensaje que deseas mostrar al usuario, por ejemplo, "¡Este dato ya existe! Verifica nuevamente.".

5. Guarda la macro y cierra el diseñador de macros.

Al realizar estos pasos, cada vez que se actualice el campo especificado en el formulario, la macro verificará si ese dato ya existe en la tabla. Si se encuentra un duplicado, se mostrará un mensaje de advertencia al usuario.

Ten en cuenta que en lugar de usar una macro, también puedes lograr este resultado utilizando código VBA en el evento "Después de actualizar" del formulario. Aquí tienes un ejemplo de cómo podrías hacerlo:

1
2
3
4
5
6
7
8
9
Private Sub NombreDelCampo_AfterUpdate()
    Dim duplicado As Variant
 
    duplicado = DLookup("CustomerID", "Customer2", "CustomerID = '" & Me.NombreDelCampo.Value & "'")
 
    If Not IsNull(duplicado) Then
        MsgBox "¡Este dato ya existe! Verifica nuevamente."
    End If
End Sub

Asegúrate de reemplazar "NombreDelCampo" con el nombre correcto del campo en el que deseas verificar los duplicados y "NombreDelFormulario" con el nombre del formulario actual.

Espero que esta solución te ayude a validar duplicados durante la captura de datos en Access. ¡Saludos desde México!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar