J'ai penser qu'un module serait plus sympa pour que ça serve au moins a quelqu'un !!
Donc...
Source / Exemple :
'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
Conclusion :
Voila, J'espère que ça vous plais ... @+
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.