Suppression arrière

Hello à tous,

Quelqu’un peut me dire comment apporter une solution à mon problème.

Voilà le code ci-dessous génère un bug lorsqu'on utilise la touche "Suppr arrière"

Ce code accepte que des chiffres lors de la saisie dans le textbox

Merci pour votre aide

Private Sub Montant_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

If KeyAscii = 8 Then Exit Sub 'permet de quitter le contrôle même vide

If Not Chr(KeyAscii) Like "#" Then KeyAscii = 0

End Sub

Bonjour,

Je te propose un autre code avec Select Case pour un choix seulement numérique avec le séparateur décimal du système, adapte à tes besoins :

Private Sub Montant_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

    Select Case KeyCode

        Case 8 'suppression...
            Montant.Text = Left(Montant.Text, Len(Montant.Text))

        Case 9, 96 To 105 'tabulations et chiffres donc ne rien faire...

        Case 110, 188 'séparateur décimal...
            '1 seul
            If InStr(Montant.Text, ",") > 1 Or InStr(Montant.Text, ".") > 1 Then KeyCode = 0: Exit Sub

            'séparateur décimal système
            If Chr(46) <> Format(0, ".") Then KeyCode = 188
            If Chr(44) <> Format(0, ".") Then KeyCode = 110

        Case Else
            KeyCode = 0

    End Select

End Sub

Hello Theze,

Super, plus de souci.

Merci

Rechercher des sujets similaires à "suppression arriere"