Campo de Texto con valores posibles

Pues eso tengo un campo de texto que quiero que solo tenga dos entradas posibles, es decir que solo se puede entrar por ejemplo blanco o negro.

¿Cómo se hace esto? Que atributos le tengo que dar al campo, porque probablemente sea facil pero es que no lo encuentro.

1 Respuesta

Respuesta
1

Pispa: En el Evento BeforeUpdate de ese control (Antes de Actualizar, que si lo generas en La ventana de Propiedades >> Eventos >> Anes de Actualizar te queda:

Private Sub TuTextBox_BeforeUpdate(Cancel As Integer)
'Pones estas líneas
If Me.TutextBox.Value <> "Blanco" Or Me.TuTextBox.Value <> "Negro" Then
MsgBox "El valor que has entrado no es válido........" & vbCrLf & "Repasa la entrada e intenta de nuevo", vbCritical, "VALOR ERRONEO"
DoCmd.CancelEvent
Me!TuTextBox.Undo
End If
End Sub

No te dejará salir de esa rutina hasta que no pongas Blanco o Negro. Saludos >> Jacinto

Me da error

Me dice no se encontró el método o el dato miembro refiriéndose a Me.TuTextbox

Private Sub Formato_BeforeUpdate(Cancel As Integer)

'Pones estas líneas
If Me.TuTextBox.Value <> "Blanco" Or Me.TuTextBox.Value <> "Negro" Then
MsgBox "El valor que has entrado no es válido........" & vbCrLf & "Repasa la entrada e intenta de nuevo", vbCritical, "VALOR ERRONEO"
DoCmd.CancelEvent
Me!TuTextBox.Undo
End If

End Sub

Pispa: Tienes que sustituir TutextBox, por el nombre que tu tengas, que no locitas en ninguna parte.

Si el nombre del Cuadro de texto tuyo se llamara Texto1, tienes que sustituir TuTextBox por Texto1

Mis saludos >> Jacinto

Pispa: Releyendo tu texto, he desuponer que tu cuadro de texto se llama Formato,

Si eso es así te debe quedar.

Private Sub Formato_BeforeUpdate(Cancel As Integer)
'Pones estas líneas
If Me.Formato.Value <> "Blanco" Or Me.Formato.Value <> "Negro" Then
MsgBox "El valor que has entrado no es válido........" & vbCrLf & "Repasa la entrada e intenta de nuevo", vbCritical, "VALOR ERRONEO"
DoCmd.CancelEvent
Me!Formato.Undo
End If
End Sub

Saludos >> Jacinto

Sigue sin funcionar

El control se llama Formato y el código que he puesto es :

Private Sub Formato_BeforeUpdate(Cancel As Integer)

'Pones estas líneas
If Me.Formato.Value <> "Papel" Or Me.Formato.Value <> "Electrónico" Then
MsgBox "El valor que has entrado no es válido........" & vbCrLf & "Repasa la entrada e intenta de nuevo", vbCritical, "VALOR ERRONEO"
DoCmd.CancelEvent
Me!Formato.Undo
End If

End Sub

Este campo esta dentro de un formulario pertenece a una base de datos uno de sus campos es formato.

Pispa: Supongo que tienes activado el evento porque antes te daba error.

Si es así dime por favor que error te da ahora.

En cualquier caso debes huir de poner nombres de Objetos y Campos que tengas visos de ser palabras reservadas de Access y en éste caso Formato lo tiene.

Para comenzar en la Tabla, a ese campo le pondría TipoF o TipoFormato y en el Formulario, le llamaria igual o lo renombraria con TxtFormato.

Como lo tienes creo que está bien.

Prueba Primero de todo cambiando el Or por un And

Ya me contarás >> Jacinto

¡Gracias!

Muchas Gracias y Muchas Gracias

Has sido tremendamente útil y sobre todo paciente y profesional un gusto tratar contigo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas