Ir para conteúdo
Fórum Script Brasil
  • 0

Máscaras No Textbox


Macêdo

Pergunta

7 respostass a esta questão

Posts Recomendados

  • 0

Máscara De CPF No Textbox

Colocar no evento change:

If Len(Text1) = 3 Then

Text1 = Text1 + "."

Text1.SelStart = 5

End If

If Len(Text1) = 7 Then

Text1 = Text1 + "."

Text1.SelStart = 9

End If

If Len(Text1) = 11 Then

Text1 = Text1 + "-"

Text1.SelStart = 14

End If

(colocar propriedade maxlengt = 14)

Link para o comentário
Compartilhar em outros sites

  • 0

Máscara De CNPJ No Textbox

Colocar no evento chenge:

If Len(Text1) = 2 Then

Text1 = Text1 + "."

Text1.SelStart = 4

End If

If Len(Text1) = 6 Then

Text1 = Text1 + "."

Text1.SelStart = 9

End If

If Len(Text1) = 10 Then

Text1 = Text1 + "/"

Text1.SelStart = 12

End If

If Len(Text1) = 15 Then

Text1 = Text1 + "-"

Text1.SelStart = 17

End If

(colocar propriedade maxlengt = 18)

Link para o comentário
Compartilhar em outros sites

  • 0

Boa noite Pessoal,

realmente todas as máscaras funcionam perfeitamente, até mesmo para outros tipos, no meu caso eu alterei para telefone com o seguinte formato (##) ####-####.

Entre tanto percebi um problema, caso você cometa um erro na digitação de algum dos algarismos, no CNPJ, CPF, DATA ou Etc, se você utilizar o Backspace para apagar até o digito errado, o curso "trava" até o algarismo que foi acrescentado para dar o formato ("/", "." ou "-"), paga poder apagar você tem de selecionar TODO o conteúdo do TextBox e apagar.

Amigos gostaria de saber se temos alguma opção para driblar essa questão?

Agradeço desde já a atenção.

Pedro Souza

Link para o comentário
Compartilhar em outros sites

  • 0

Galera,

consegui resolver meu problema com o seguinte código, o exemplo abaixo é para um TextBox de CEP, mas pode ser adaptado para qualquer tipo (CNPJ, CPF, Data, etc):

Private Sub inputCEP_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
   Select Case KeyAscii
      Case 8       'Aceita o BACK SPACE
      Case 13: SendKeys "{TAB}"    'Emula o TAB
      Case 48 To 57
         If inputCEP.SelStart = 2 Then inputCEP.SelText = "."
         If inputCEP.SelStart = 6 Then inputCEP.SelText = "-"
      Case Else: KeyAscii = 0     'Ignora os outros caracteres
   End Select
    Plan2.Range("H14").Value = inputCEP.Value       'Os dados digitados só implementados na planilha de cálculo
End Sub

Lembre galera que nas propriedades colocar o MaxLenght com o valor 10 que o número máximo de caracteres do campo ao digitar.

Abraço a todos.

Pedro Souza

Link para o comentário
Compartilhar em outros sites

  • 0
Galera,

consegui resolver meu problema com o seguinte código, o exemplo abaixo é para um TextBox de CEP, mas pode ser adaptado para qualquer tipo (CNPJ, CPF, Data, etc):

Private Sub inputCEP_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
   Select Case KeyAscii
      Case 8       'Aceita o BACK SPACE
      Case 13: SendKeys "{TAB}"    'Emula o TAB
      Case 48 To 57
         If inputCEP.SelStart = 2 Then inputCEP.SelText = "."
         If inputCEP.SelStart = 6 Then inputCEP.SelText = "-"
      Case Else: KeyAscii = 0     'Ignora os outros caracteres
   End Select
    Plan2.Range("H14").Value = inputCEP.Value       'Os dados digitados só implementados na planilha de cálculo
End Sub

Lembre galera que nas propriedades colocar o MaxLenght com o valor 10 que o número máximo de caracteres do campo ao digitar.

Abraço a todos.

Pedro Souza

Amigos alguém já viu ou conseguiu montar uma máscara para o campo valor?

Desde já obrigado.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...