¿Mask?

Hola fejoal, te cuento:
Resulta que cree un formulario para ingresar datos a una base. Los datos se introducen un unos textbox, lom que quiero es darle un formato a los datos que entran, por ejemplo que queden así:
NNNN-NNNN-NNNNN
Donde N: número
La idea es que el usuario solo escriba los números y eso pase a donde yo quiera con el formato que esta allí arriba. Se me ocurre como hacerlo pero supongo que seria muy largo y posiblemente exista algún comando que haga eso por mi. Si es así, te agradecería eternamente que me contestaras de ser posible con 1 ejemplo (aunque sea cortito).
Gracias desde ya.
fernando

1 Respuesta

Respuesta
1
La práctica usual en estos casos es usar tres textbox. Así son las máscaras que se usan para ingresar el código de registro de un software o los núemros de tarjetas de créditos.
Este ejemplo muestra cómo funcionaría la macro que captura tal información. Pega en el panel de tu formulario estos códigos:
'estas instrucciones, completan con ceros aquellos números que tengan
'menos cifras que el máximo:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Configurar propiedad MaxLenght a 4 para este textbox
TextBox1.Text = Format(TextBox1.Value, "0000")
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Configurar propiedad MaxLenght a 4 para este textbox
TextBox2.Text = Format(TextBox2.Value, "0000")
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Configurar propiedad MaxLenght a 5 para este textbox
TextBox3.Text = Format(TextBox3.Value, "00000")
End Sub
Private Sub CommandButton1_Click()
NumeroT = TextBox1.Text & "-" & TextBox2.Text & "-" & TextBox3.Text
'Así tendrás el número completo en una variable que luego podrás utilizar
'como lo desees
End Sub
Cada textbox permite que se ingrese un máximo de caracteres. Seleccionado el control presiona F4 para que aparezcan sus propiedades. Busca aquella que dice "MaxLenght" y coloca allí la cantidad máxima de cifras que guardará ese control.
Al salir de cada textbox, su contenido se completará con ceros a la izquierda si tuviera menos cifras que el máximo permitido.
Espero que esto te sirva.
Un abrazo!
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas