Aceptación de datos en textbox

Saludos, dam tengo este código para que cuando se inicie el userform me hale una hora y la pongo en el textbox2,

Private Sub UserForm_Initialize()
TextBox2 = Format(Sheets("Configuración de las Jugadas").Range("B2"), "hh:mm AM/PM")

End Sub

y este otro código para que cuando le den al CommandButton1 se registre de nuevo en la celda de b2.

Private Sub CommandButton1_Click()
Sheets("Configuración de las Jugadas").Range("B2") = Format(TextBox2, "hh:mm AM/PM")
End Sub

lo que quiero hacer es validar para que el textbox solo me acepte escribir horas ej. "01:10 p.m." , "10:50 p.m."

Gracias saludos

1 Respuesta

Respuesta
1

Utiliza lo siguiente, pero no manejes el formato am/pm, para NO buscar si es la 1 de la mañana o la una de la tarde, así la 1 es la 1 de la mañana y las 13 es la una de la tarde

Private Sub CommandButton1_Click()
hora = Left(TextBox2, 2)
minu = Mid(TextBox2, 4, 2)
horario = TimeSerial(hora, minu, 0)
liminf = TimeSerial(13, 10, 0)
limsup = TimeSerial(22, 50, 0)
If horario >= liminf And horario <= limsup Then
'esta bien
Sheets("Configuración de las Jugadas").Range("B2") = Format(TextBox2, "hh:mm:ss;@")
Else
MsgBox "Horario error"
End If
End Sub
Private Sub UserForm_Initialize()
TextBox2 = Format(Sheets("Configuración de las Jugadas").Range("B2"), "hh:mm:ss;@")
End Sub

Saludos. Dam

Me da un error, "subíndice fuera del intervalo"

PD: le envíe el archivo a su correo para que lo revise

Gracias

el userform es el que se llama configuracion

Revisa el nombre de las hojas en sheets

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas