Access - Error de captura

 
Vista:

Error de captura

Publicado por DigiViper (1 intervención) el 31/05/2005 18:01:52
Estoy haciendo una BD y quiero que en un campo numerico me acepte solo ciertos datos (alrededor de 600 datos diferentes) y si el dato que se introduzca no concuerde con alguno de estos marque error, ya lo intente utilizando una mascara de entrada, pero son demasiados datos, talvez alguien me podria decir como hacerlo dentro de una forma, seria como una filtro o una comparacion.
Gracias
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 datos en un campo numérico contra una lista específica

Publicado por Alejandro (4142 intervenciones) el 03/06/2023 00:23:46
Para validar que el dato introducido en un campo numérico coincida con una lista específica, puedes utilizar el evento `BeforeUpdate` del formulario. Aquí tienes un ejemplo de cómo puedes implementar esta validación:

1. Abre el formulario en el modo de diseño.
2. Selecciona el campo numérico al que deseas aplicar la validación.
3. Ve a la pestaña "Eventos" en la ventana de propiedades del campo.
4. Busca y selecciona el evento `BeforeUpdate`.
5. Haz clic en el botón de los tres puntos (...) para abrir el editor de código.

A continuación, puedes utilizar el siguiente código para realizar la validación:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub NombreDelCampo_BeforeUpdate(Cancel As Integer)
    Dim validValues As String
    validValues = "1;2;3;4;5" ' Aquí debes especificar los valores válidos separados por punto y coma (;)
 
    ' Obtener el valor introducido en el campo
    Dim enteredValue As Variant
    enteredValue = Me.NombreDelCampo.Value
 
    ' Convertir el valor introducido a texto para facilitar la comparación
    Dim enteredText As String
    enteredText = CStr(enteredValue)
 
    ' Validar si el valor introducido está en la lista de valores válidos
    If InStr(1, validValues, enteredText & ";") = 0 Then
        MsgBox "El valor introducido no es válido. Por favor, introduzca uno de los valores permitidos.", vbExclamation, "Error de validación"
        Cancel = True ' Cancelar la actualización del campo
    End If
End Sub

En el código anterior, debes reemplazar "NombreDelCampo" con el nombre real del campo numérico en tu formulario. En la variable `validValues`, debes especificar los valores válidos separados por punto y coma (;). Puedes incluir todos los valores que deseas permitir en la validación.

Cuando el evento `BeforeUpdate` se dispare (antes de que se actualice el campo), se realizará la validación. Si el valor introducido no coincide con ninguno de los valores válidos, se mostrará un mensaje de error y se cancelará la actualización del campo.

Con esta solución, podrás validar que el dato introducido en el campo numérico coincida con la lista específica de valores permitidos.
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