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

Validação de Campos


Standart

Pergunta

Olá amigos, estive procurando na internet sobre validaçãod e campos em vba, no entanto encontrei muita coisa para vb.net, mas para vba nada que pudesse dar uma luz de como desenvolver validadores de dados como Email, CPF, CNPJ, campos numericos e outros. A minha pergunta é:

Tem como trazer para o vba recursos externos que permitar trabalhar numa validação como essa?

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
If Not Char.IsLetterOrDigit(e.KeyChar) Then
     e.Handled = True
End If
End Sub

O Vba desconhece isso por exemplo Handles.

Espero ter sido claro.

Grato a todos

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Olá amigo kuroi, segui o se conselho e fui a procura das dicas, até encontrei uma que ajudou bastante com relação a criação de mascara nos campos veja:

Para telefone

Private Sub txtFone1_Change()
    Dim texto As String
    
    If Len(txtFone1) = 2 Then
        txtFone1.Text = "(" + txtFone1.Text
    End If
    If Len(txtFone1) = 3 Then
        txtFone1.Text = txtFone1.Text + ")"
    End If
    If Len(txtFone1) = 8 Then
        txtFone1.Text = txtFone1.Text + "-"
    End If
End Sub

Só que encontri um problema, por exemplo.

O usuario digita 21 ele logo coloca (21), em seguida usuario digita 5555 ela vai alterar pra (21)5555-, porém surge um problema se o usuário digitou o prefixo do telefone errado ele não deixa usar a tecla de backspace para colocar o numero correto, já tentei algumas alternativas usando Left$ testando se a tecla backspace foi pressionada, mas ainda não achei a solução, alguém sabe como posso contornar isso?

Abraço a todos e muito obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

standart, no momento eu to sem vb6 no pc aqui (pra você ter uma ideia, não tenho nem office pra poder testar no vba), então não da pra testar esse codigo aqui.

mas pra fazer esse tipo de mascara, você pode usar o controle MaskEdBox (tem q adicionar o componente antes). ai você só adicionaria o valor "(##) ####-####" na propriedade Mask, e deveria resolver.

Editado por kuroi
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,2k
    • Posts
      652k
×
×
  • Criar Novo...