Bonjour,
Je sais que des sujets similaires ont déjà été abordés, mais je n'ai pas trouvé de solution exacte à mon cas.
Je souhaite formater à la saisie dans une textbox en séparant tous les 4 chiffres (espace ou -, /). De manière à lorsque l'on rentre des données, Cela "passe" aux 4 chiffres suivant automatiquement.
Pour l'instant j'utilise ce code qui fonctionne, sauf si une correction est apportée (ça décale le nombre de caractère et ajoute trop de -).
Bref c'est un peu du bricolage et j'ai besoin de quelque chose de plus fiable pour traiter les données par après.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 If Len(TextBox9.Text) = 4 _ Or Len(TextBox9.Text) = 9 _ Or Len(TextBox9.Text) = 14 _ Or Len(TextBox9.Text) = 19 _ Or Len(TextBox9.Text) = 24 _ Or Len(TextBox9.Text) = 29 _ Or Len(TextBox9.Text) = 34 _ Or Len(TextBox9.Text) = 39 _ Or Len(TextBox9.Text) = 44 _ Or Len(TextBox9.Text) = 49 _ Or Len(TextBox9.Text) = 54 _ Or Len(TextBox9.Text) = 59 _ Or Len(TextBox9.Text) = 64 _ Or Len(TextBox9.Text) = 69 _ Or Len(TextBox9.Text) = 74 _ Or Len(TextBox9.Text) = 79 _ Or Len(TextBox9.Text) = 84 _ Or Len(TextBox9.Text) = 89 Then TextBox9.Text = TextBox9.Text & "-" TextBox9.SelStart = Len(TextBox9.Text) End If
J'ai essayer avec ce type de formule :Mais cela n'a jamais fonctionné correctement. Notamment l'écriture a gauche que je n'ai pas réussi à forcer. Cela se comportait de la sorte : 123 4567 au lieu de 1234 567
Code : Sélectionner tout - Visualiser dans une fenêtre à part TextBox1.Value = Format(TextBox1.Value, "#### #### ####")
Désolé si cela est assez basique, j'en suis à mes débuts en VBA et je galère pas mal sur ce genre de petits soucis.
Merci de m'avoir lu,
Quentin
Partager