Formatage d'une textbox sous la forme 00 000 000

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

zephir94

XLDnaute Impliqué
Bonjour à tous,

J'ai un soucis de formatage de saisie d'une textbox, je voudrais que la saisie soit obligatoirement sous la forme :
00 000 000, sauf que j'obtiens 00 000000 !
Voici mon code écrit :

Code:
Private Sub TextBox2_Change()
TextBox2.MaxLength = 10
    Valeur = Len(TextBox2)
    If Valeur = 2 Or Valeur = 3 Then
    TextBox2 = TextBox2 & " "
    End If
End Sub

Pourtant j'écris bien si valeur est égale à 2 ou 3 mettre un espace ! et je prévois bien 10 caractères soit 8 chiffres et deux espaces !

Merci par avance pour vos conseilles
Amicalement
Zephir
 
Merci à toi Roland_M

Je viens de le voir, et cela fonctionne comme dans mon fichier après test de ton code mais le mode de saisie ne me convient pas hélas, la saisie va être déroutante pour celui qui va la taper, en effet visuellement ça fait des paquets qui se réorganises au fur et à mesure .
Merci pour ton aide
 
re

je ne comprend pas en quoi cela est déroutant !?
ça existe dans beaucoup de saisies particulières !
et la démarche que tu nous montres dans ton premier message c'est exactement ce qui va se passer !?
ou alors il faut que tu traites après saisie complète et pas avec _Change !
enfin c'est toi qui voit !

EDIT: comme ceci, mais ça ne se produira que lorsque tu auras sélectionné un autre contrôle !

Private Sub TextBox2_AfterUpdate()
TextBox2 = Format(TextBox2, "### ### ### ###")
End Sub
 
Bonjour , Salut Roland
Moi j'ai testé ça en VBA avec une textbox c'est OK , ou alors j'ai pas compris ce qu'il veut ?
TextBox1 = Format(TextBox1, "## ### ###00 000 000")
J'aussi fait AfterUpdate car Change pose Pb !!

PS : Roland j'ai essayé ( il y a 1 mois) de te faire un MP , je n'ai pas le droit de t'écrire ??
 
Salut hervé !

ben je comprend pas, tu n'est pas le premier à me dire ça !
pourtant j'empêche personne de me joindre !?
il y en a un qui m'a joint récemment donc ça ne devrait pas poser de problème !?
s'il faut créer une liste de tous les noms à accepter ça va pas le faire !
on avait pas se problème avant, tout était plus simple !
 
Bonjour à tous,

J'ai trouvé en reprenant le code Dranreb et en l'incérant dans ma prog, merci beaucoup !

Code:
Private Sub TextBox1_Change()
    TextBox1.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
    Valeur = Len(TextBox1)
    If Len(TextBox1.Text) Mod 4 = 2 Then TextBox1.Text = TextBox1.Text & " "
End Sub

La saisie se fait de gauche à droite sans faire des paquets qui se réorganisent au fur et à mesure.

Merci à vous tous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
890
Retour