Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Boa Tarde Pessoal, tenho o seguinte códigos que fazem a formatação dos textbox celular e Telefone ambos isso dividida em duas textbox.
esse formata a textebox Telefone
'Limita a Qde de caracteres
txt_telefone.MaxLength = 14
'Aplicar formato (xx)xxxx-xxxx
If Len(txt_telefone) = 0 Then txt_telefone.Text = txt_telefone.Text & "("
If Len(txt_telefone) = 3 Then txt_telefone.Text = txt_telefone.Text & ") "
If Len(txt_telefone) = 9 Then txt_telefone.Text = txt_telefone.Text & "-"
--------------------------------------------------------------------------------------------------------------
esse formata a textbox Celular
'Limita a Qde de caracteres
txt_celular.MaxLength = 15
'Aplicar formato (xx)xxxx-xxxx
If Len(txt_celular) = 0 Then txt_celular.Text = txt_celular.Text & "("
If Len(txt_celular) = 3 Then txt_celular.Text = txt_celular.Text & ") "
If Len(txt_celular) = 10 Then txt_celular.Text = txt_celular.Text & "-"
pretendo colocar esses dois em somente uma textbox ou seja que quando eu digitar, um numero que não contenha o 9º digito ele faça a sua formatação normal, a mesma regra vale para números com o 9º digito alguém poderia me auxiliar neste caso.
desde ja muito obrigado.
esse formata a textebox Telefone
'Limita a Qde de caracteres
txt_telefone.MaxLength = 14
'Aplicar formato (xx)xxxx-xxxx
If Len(txt_telefone) = 0 Then txt_telefone.Text = txt_telefone.Text & "("
If Len(txt_telefone) = 3 Then txt_telefone.Text = txt_telefone.Text & ") "
If Len(txt_telefone) = 9 Then txt_telefone.Text = txt_telefone.Text & "-"
--------------------------------------------------------------------------------------------------------------
esse formata a textbox Celular
'Limita a Qde de caracteres
txt_celular.MaxLength = 15
'Aplicar formato (xx)xxxx-xxxx
If Len(txt_celular) = 0 Then txt_celular.Text = txt_celular.Text & "("
If Len(txt_celular) = 3 Then txt_celular.Text = txt_celular.Text & ") "
If Len(txt_celular) = 10 Then txt_celular.Text = txt_celular.Text & "-"
pretendo colocar esses dois em somente uma textbox ou seja que quando eu digitar, um numero que não contenha o 9º digito ele faça a sua formatação normal, a mesma regra vale para números com o 9º digito alguém poderia me auxiliar neste caso.
desde ja muito obrigado.
- netocasaroli
- Consultor
- Mensagens: 219
- Registrado em: Seg Mai 11, 2015 5:24 pm
- Localização: Londrina-PR
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Maicon,
Use seguinte código no evento AfterUpdate da textbox:
Use seguinte código no evento AfterUpdate da textbox:
Código: Selecionar todos
Select Case True
Case Len(txt_telefone) = 14
txt_telefone = Format(txt_telefone, "(##) ####-####")
Case Len(txt_telefone) = 15
txt_telefone = Format(txt_telefone, "(##) #####-####")
End Select
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Ola Neto, fiz o processo conforme descrito acima porem não houve alteração ao digitar o numero digitados, seria possível executar uma condição if para esse caso?netocasaroli escreveu:Maicon,
Use seguinte código no evento AfterUpdate da textbox:
Código: Selecionar todos
Select Case True Case Len(txt_telefone) = 14 txt_telefone = Format(txt_telefone, "(##) ####-####") Case Len(txt_telefone) = 15 txt_telefone = Format(txt_telefone, "(##) #####-####") End Select
obrigado por sua atenção
- netocasaroli
- Consultor
- Mensagens: 219
- Registrado em: Seg Mai 11, 2015 5:24 pm
- Localização: Londrina-PR
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Esse código deve ser executado após a atualização do valor da textbox. Pois só após o valor digitado a rotina terá condições de saber se há 14 ou 15 caracteres.
- netocasaroli
- Consultor
- Mensagens: 219
- Registrado em: Seg Mai 11, 2015 5:24 pm
- Localização: Londrina-PR
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Maicon,
Apenas algumas considerações: a instrução Select Case substitui a condição IF, pois as rotinas só serão executadas SE a condição descrita for atingida.
O seu código anterior alterava o texto conforme ia digitando (por meio do evento KeyPress, acredito). Nessa situação, há 2 máscaras de entrada: 1 para telefone fixos e outra para celular. O que indicará qual máscara deve ser usada é a quantidade de caracteres do campo. Esse número só teremos ao final da digitação; por isso as alterações não ocorrem no momento da digitação.
Apenas algumas considerações: a instrução Select Case substitui a condição IF, pois as rotinas só serão executadas SE a condição descrita for atingida.
O seu código anterior alterava o texto conforme ia digitando (por meio do evento KeyPress, acredito). Nessa situação, há 2 máscaras de entrada: 1 para telefone fixos e outra para celular. O que indicará qual máscara deve ser usada é a quantidade de caracteres do campo. Esse número só teremos ao final da digitação; por isso as alterações não ocorrem no momento da digitação.
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
netocasaroli escreveu:Maicon,
Apenas algumas considerações: a instrução Select Case substitui a condição IF, pois as rotinas só serão executadas SE a condição descrita for atingida.
O seu código anterior alterava o texto conforme ia digitando (por meio do evento KeyPress, acredito). Nessa situação, há 2 máscaras de entrada: 1 para telefone fixos e outra para celular. O que indicará qual máscara deve ser usada é a quantidade de caracteres do campo. Esse número só teremos ao final da digitação; por isso as alterações não ocorrem no momento da digitação.
Boa Tarde Neto, fiz conforme sua indicação porem nao esta acontecendo nada no evento AfterUpdate
a estrutura esta desta forma
Private Sub txt_telefone_AfterUpdate()
Select Case True
Case Len(txt_telefone) = 14
txt_telefone = Format(txt_telefone, "(##) ####-####")
Case Len(txt_telefone) = 15
txt_telefone = Format(txt_telefone, "(##) #####-####")
End Select
End Sub
porem quando digito o código e sai do campo o numero não recebe a formatação.
forte abraço.
- netocasaroli
- Consultor
- Mensagens: 219
- Registrado em: Seg Mai 11, 2015 5:24 pm
- Localização: Londrina-PR
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Anexe seu modelo aqui no fórum para que possamos avaliar melhor.
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
netocasaroli escreveu:Anexe seu modelo aqui no fórum para que possamos avaliar melhor.
Boa Noite, Neto
segue conforme solicitado, o caso em questão esta no frm_orcamento no campo: telefone / celular
- netocasaroli
- Consultor
- Mensagens: 219
- Registrado em: Seg Mai 11, 2015 5:24 pm
- Localização: Londrina-PR
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
Maicon,
Desculpe... Falha minha! Considerei o texto já formatado e configurei errado a rotina. Segue código correto:
Desculpe... Falha minha! Considerei o texto já formatado e configurei errado a rotina. Segue código correto:
Código: Selecionar todos
Private Sub txt_telefone_AfterUpdate()
Select Case True
Case Len(txt_telefone) = 10
txt_telefone = Format(txt_telefone, "(##) ####-####")
Case Len(txt_telefone) = 11
txt_telefone = Format(txt_telefone, "(##) #####-####")
End Select
End Sub
Re: FORMATAR TEXTBOX NUMERO DE CELULAR E TELEFONE 9º DIGITO
netocasaroli escreveu:Maicon,
Desculpe... Falha minha! Considerei o texto já formatado e configurei errado a rotina. Segue código correto:
Código: Selecionar todos
Private Sub txt_telefone_AfterUpdate() Select Case True Case Len(txt_telefone) = 10 txt_telefone = Format(txt_telefone, "(##) ####-####") Case Len(txt_telefone) = 11 txt_telefone = Format(txt_telefone, "(##) #####-####") End Select End Sub
Boa Tarde, Neto
Muito obrigado, aplicação rodando em perfeita condição. código 100% funcional.