Validar formato Textbox

Hola, tengo un formulario dentro de una macro el cual contiene un textbox el cual quiero que al escribir el usuario un dato al salir se valide ese dato y si el formato no concuerda con uno preestablecido (por ejemplo: "14:32") me mande un mensaje de erro, el formato realmente es una hora y por tanto espero que el textbox siempre sea en formato de hora y no otro dato cualquiera.

1 Respuesta

Respuesta
1
Prueba con este código. Requiere de que te apoyes de una celda de tu libro; tu la escoges.
-
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Range("a1").Value = TextBox1.Value
    MsgBox Range("a1").NumberFormat
End Sub
-
Oye disculpa pero lo único que conseguí fue que me mande un mensaje cuando salgo del Textbox donde me indica el formato pero no me impide poner cualquier dato, yo espero que al salir del textbox se valide el campo y si es un formato diferente de una hora valida entonces si mande un mensaje de error que me indique que no es una hora valida y al cerrar este mensaje borre el valor del textbox.
Ese fue un primer acercamiento. Ya completo queda así:
-
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Range("a1").Value = TextBox1.Value
    If Range("a1").NumberFormat = "h:mm" Then Exit Sub
    MsgBox "Dato inválido..."
    TextBox1.Value = ""
    Range("a1").Value = ""
End Sub
-
Es decir, la posvalidación, puede tomar tantas formas como deseos tenga el programador.
-

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas