VBA : Obliger un chiffre à 3 caractères dans une textbox [Résolu]

Haricomagic 2 Messages postés jeudi 5 janvier 2012Date d'inscription 5 janvier 2012 Dernière intervention - 5 janv. 2012 à 13:35 - Dernière réponse : Haricomagic 2 Messages postés jeudi 5 janvier 2012Date d'inscription 5 janvier 2012 Dernière intervention
- 5 janv. 2012 à 14:36
Bonjour à tous,


J'ai une useform avec une textbox et j'aimerais obliger l'utilisateur à rentrer un chiffre à 3 caractères.

exemple :
Je ne veux pas que l'utilisateur puisse écrire 12, mais 012.

J'ai beaucoup cherché et n'ai pas trouvé solution à mon problème.

Pour l'instant, j'ai simplement limité la textbox aux valeurs numériques, à 3 caractères maxi.



Private Sub TextBox4_Change()

TextBox4.MaxLength = 3

On Error Resume Next

If Not IsNumeric(Right(TextBox4, 1)) Then
TextBox4.Text = Left(TextBox4, Len(TextBox4) - 1)
End If

End Sub


D'avance merci
Afficher la suite 

2 réponses

Répondre au sujet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 5 janv. 2012 à 14:13
+3
Utile
n'a rien a faire dans le Change, sinon, pas saisie inconfortable voire impossible.

Déjà, mettre le MaxLength de ta box à 3, cela me semble une évidence.

faire par exemple :

Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    '# Suppression des eventuels espaces
    TextBox1.Text = Trim$(TextBox1.Text)
    
    '# On autorise l'utilisateur à vider le Textbox
    If LenB(TextBox1.Text) = 0 Then Exit Sub
        
    '# L'utilisateur n'a pas respecté les règles du jeu...
    If Not IsNumeric(TextBox1.Text) Then
        '# On a la possibilité de mettre un MsgBox.
        Cancel = True
    Else
        '" Le format que l'on souhaite obtenir
        TextBox1.Text = Format$(TextBox1.Text, "000")
    End If
End Sub



Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Haricomagic 2 Messages postés jeudi 5 janvier 2012Date d'inscription 5 janvier 2012 Dernière intervention - 5 janv. 2012 à 14:36
0
Utile
C'est parfait, tout à fait ce que je recherchais !

Merci beaucoup
Commenter la réponse de Haricomagic

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.