1
resposta

Validação do keypress em função

Fiz dessa forma... usando Me.ActiveControl e passando o KeyAscii no parâmetro.

'Essa verificação foi colocada para evitar filtros desnecessários
'Validação do campo Peso
Private Sub txtPeso_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Call testa_campo_numerico(KeyAscii)
End Sub

'Essa verificação foi colocada para evitar filtros desnecessários
'Validação do campo Valor do Contrato
Private Sub txtValorContrato_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Call testa_campo_numerico(KeyAscii)
End Sub

Function testa_campo_numerico(ByVal KeyAscii As MSForms.ReturnInteger)
    If Len(Me.ActiveControl) > 0 Then
        If KeyAscii < 48 Or KeyAscii > 57 Then
            KeyAscii = 0
        End If
    Else
        If (KeyAscii < 48 Or KeyAscii > 57) And KeyAscii <> 60 And KeyAscii <> 62 Then
            KeyAscii = 0
        End If
    End If

End Function

Alguma sugestão de melhoria ou outra forma de fazer?

1 resposta

Olá Cristiano td bem?

Ficou bem interessante assim, criando uma função para a verificação. Parabéns

Equipe do Prof. Sabino