Format automatique TextBox

nyco-

XLDnaute Junior
Bonjour,

Petite question (toute bête peut-être), mais je cherche à mettre en forme une TextBox dans un Userform.

En gros, il s'agit de renseigner un numéro de Sécurité Sociale qui se présente sous la forme 0-00-00-00-000-000. Ce que je souhaiterai, c'est qu'au moment de saisir l'information dans la TextBox, la mise en forme soit instantanée, que ce soit durant la saisir ou en fin de focus sur la TextBox.

Pour le moment tout ce que j'ai testé le fonctionne pas. J'arrive à changer le format du nombre dans une cellule, mais dans la TextBox je ne parviens qu'à afficher 0-00-00-00-000-000 sans pouvoir modifier.

Quelqu'un saurait-il comment faire ? Et si c'est faisable surtout :D

Merci d'avance pour vos lumières :)
 

kjin

XLDnaute Barbatruc
Re : Format automatique TextBox

Bonjour,
L'enregistreur de macro donne pour le N° de sécu complet avec la clé (j'ai ajouté les tirets qui normalement n'ont pas lieu d'être !)
Code:
Private Sub TextBox1_AfterUpdate()
TextBox1 = Format(TextBox1, "[>=3000000000000]#""-""##""-""##""-""##""-""###""-""###"" | ""##;#""-""##""-""##""-""##""-""###""-""###")
Sinon, sans la clé
Code:
Private Sub TextBox1_AfterUpdate()
TextBox1 = Format(TextBox1, "#""-""##""-""##""-""##""-""###""-""###")
End Sub
A+
kjin
 
G

Guest

Guest
Re : Format automatique TextBox

Bonjour,

vois si cela te convient,

On ne peut saisir que des chiffres qui seront aligner de gauche à droite suivant le format donné,avec les '0'.

Code:
Option Explicit
Dim bchange As Boolean
Private Sub TextBox1_Change()
    If Not bchange Then
        bchange = True
        TextBox1.Text = Format(Val(Replace(TextBox1, "-", "")), "0-00-00-00-000-000")
        bchange = False
    End If
End Sub
Private Sub UserForm_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If KeyAscii < 47 Or KeyAscii > 58 Then KeyAscii = 0
End Sub

A+
 

Discussions similaires

Réponses
15
Affichages
444

Membres actuellement en ligne

Statistiques des forums

Discussions
312 361
Messages
2 087 626
Membres
103 609
dernier inscrit
AmineAB33