Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Ajuda - Somente Numeros TexBox AfterUpdate

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
duducp
Acabou de chegar
Acabou de chegar
Mensagens: 2
Registrado em: Qui Abr 02, 2015 9:44 am
Contato:

Ajuda - Somente Numeros TexBox AfterUpdate

Mensagem por duducp »

Galerinha blz?,
estou utilizando uma textbox onde a pessoa digita o id do cliente e assim que aperta enter ele procura e mostra os dados do cliente. Eu queria bloquear para que possa digitar apenas números mas como utilizo o comando afterupdate ele não esta aceitando.. alguém poder me da uma dica?

Private Sub txt_id_AfterUpdate()

If (txt_id.Text = 0) Then 'se ID for menor ou igual a 0
MsgBox "Código não Encontrado", vbCritical, Soft
txt_id.Enabled = True 'vai ativar o id
btn_img_pesq.Enabled = True 'vai ativar o botao pesquisa
txt_id.Text = ""
txt_id.SetFocus
End If

If (txt_id.Text <> "") Then 'se ID for diferente de nada
txt_id.Enabled = False 'vai desativar o id
btn_img_pesq.Enabled = False 'vai desativar o botao pesquisa
End If

Dim Linha As Long
Dim id As Long 'mudar para string se o id tiver letras ou símbolos
If Val(Me.txt_id) = 0 Then
Exit Sub
End If
Plan1.Activate
Linha = 2
id = txt_id
Do Until Cells(Linha, 1) = "" 'vai executar o laço até encontrar uma célula vazia
'Condição para localizar o registro
If Cells(Linha, 1) = id Then 'se encontrar o valor registro na célula pesquisada
opt_funcionario = Cells(Linha, 2)
opt_exfuncionario = Cells(Linha, 3)
opt_ativo = Cells(Linha, 4)
opt_inativo = Cells(Linha, 5)
txt_razao = Cells(Linha, 6)
txt_endereço1 = Cells(Linha, 7)
txt_bairro01 = Cells(Linha, 8)
txt_complemento = Cells(Linha, 9)
cmb_cidade01 = Cells(Linha, 10)
txt_cep01 = Cells(Linha, 11)
'cmb_uf01 = Cells(Linha, 12)

Exit Sub 'interrompe o código quando encontrar o código e preencher os dados
End If
Linha = Linha + 1

Loop
'se o looping for executado até a última linha significa que o excel não encontrou o código na listagem
MsgBox "Código não Encontrado", vbCritical, Soft
txt_id.Enabled = True 'vai ativar o id
btn_img_pesq.Enabled = True 'vai ativar o botao pesquisa
txt_id.Text = ""
txt_id.SetFocus
End Sub


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


srobles
Jedi
Jedi
Mensagens: 805
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Ajuda - Somente Numeros TexBox AfterUpdate

Mensagem por srobles »

Fala dudcp, blza?

Tente colocar a verificação antes do seu código :

Código: Selecionar todos

Private Sub txt_id_AfterUpdate()
     If IsNumeric(txt_id) Then
         ' Insira seu código aqui
     Else
         ' Trave os controles desejado aqui
     End If
End Sub
Teste ai e, qq coisa nos avise.

[]s


Avatar do usuário
netocasaroli
Consultor
Consultor
Mensagens: 219
Registrado em: Seg Mai 11, 2015 5:24 pm
Localização: Londrina-PR

Re: Ajuda - Somente Numeros TexBox AfterUpdate

Mensagem por netocasaroli »

Pode colocar o código para bloquear valores não numéricos no evento Change; não vai afetar no AfterUpdate...

Código: Selecionar todos

Private Sub txt_id_Change()
    txt_id = Val(txt_id)
End Sub


Avatar do usuário
Mauro Coutinho
Jedi
Jedi
Mensagens: 1561
Registrado em: Sáb Mar 13, 2010 8:10 pm
Localização: São José dos Pinhais - Pr

Re: Ajuda - Somente Numeros TexBox AfterUpdate

Mensagem por Mauro Coutinho »

duducp, movi seu tópico pois no forum DICA é para somente postarmos dicas e não solicitar ajuda.

Quanto a sua questão, utilize a instrução abaixo, que não afetará o evento AfterUpdate :

Código: Selecionar todos

Private Sub txt_id_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
        'Limita a Qde de caracteres
        txt_id.MaxLength = 8
       
        'para permitir que apenas números sejam digitados
        If KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then
            KeyAscii = 0
        End If
End Sub
Veja outras dicas referentes a formatação e limitação utilizando o evento KeyPress e change no tópico abaixo:
Fomatar TextBox Eventos KeyPress e Change
viewtopic.php?f=17&t=1505#.VboIGUaXtkY

[]s


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder