Notifications
Clear all

Criar uma mascara na textbox

3 Posts
1 Usuários
0 Reactions
794 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Fala excelianos,
Preciso criar uma mascara em uma textbox que fique da seguinte forma.
A0000000000

* Não pode conter espaço
* Se possível no evento exit ou onChage, acrescentar o A no inicio da text antes da numeração.
* Após o A, não ser possível acrescentar outros caracteres.

O padrão precisa ser dessa forma, será que dá?

 
Postado : 17/01/2012 5:33 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde Caio,

No evento onKeyPress do TextBox coloque este comando para aceitar somente números, você pode colocar ela em uma função e retornar o KeyAscii ou senão colocar em uma variável e depois utilizá-la:

1-- If Not IsNumeric(Chr(KeyAscii)) And KeyAscii <> 8 Then KeyAscii = 0

Para formatar o textbox coloque no evento exit o seguinte comando.

2-- Text1.Text = Format(Text1.Text, "A0000000000")

Ps.: Eu não testei :o, mas acho que é isso mesmo.

Abraço

Marcos Rieper

 
Postado : 17/01/2012 10:29 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Valeu riper,
da forma abaixo funcionou!

Private Sub TextBox2_Change()
TextBox2.Value = Format(TextBox2.Value, "A")
End Sub

Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Not IsNumeric(Chr(KeyAscii)) And KeyAscii <> 8 Then KeyAscii = 0
End Sub
 
Postado : 20/01/2012 9:35 am