Soyez le premier à donner votre avis sur cette source.
Snippet vu 4 798 fois - Téléchargée 48 fois
'Sur le Form1 'on insere un textbox (text1) 'dans l'évènement on_change de ce text1 on met Private Sub Text1_Change() Call FormatDate(Text1.Text, Form1.Text1) End Sub '-------------------------------------------------------- The module 'Dans un module on met Public Function FormatDate(ByRef Schaine As String, Scontrol As Control) 'on s'assure que la chaine n'est pas vide If Schaine <> "" Then Dim Pchaine, Lchaine, Nchaine Dim tmp As String 'Si le len du texte est supérieur à un If Len(Schaine) > 1 Then Pchaine = Len(Schaine) Else Pchaine = 1 End If '--------------------------------- 'filtre sur les chiffres If Asc(Mid(Schaine, Pchaine, 1)) < 47 Or _ Asc(Mid(Schaine, Pchaine, 1)) > 57 Then 'le caractère tapé n'est pas bon 'on met ce qu'il y avait avant dans tmp tmp = Mid(Schaine, 1, Pchaine - 1) 'on insère tmp dans le text1.txt Scontrol = tmp 'on repositionne le curseur Scontrol.SelStart = Pchaine - 1 Else 'on traite le masque de saisie 'pour le masque de saisie 'au bout de deux caractères on rajoute "/" If Len(Schaine) = 2 Then tmp = Schaine & "/" Scontrol = tmp Scontrol.SelStart = 4 End If 'au bout de deux caractères on rajoute "/" If Len(Schaine) = 5 Then tmp = Schaine & "/" Scontrol = tmp Scontrol.SelStart = 7 End If End If End If End Function
21 janv. 2002 à 21:25
Donc il faut dire sans le composant...MSMASK32.OCX
21 janv. 2002 à 20:56
21 janv. 2002 à 13:11
Un évènement KeyDown... autrement on peut pas faire backspace...
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If Not KeyCode = 8 Then
Call FormatDate(Text1.Text, Form1.Text1)
End If
End Sub
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.