Masque de saisie (date) vers.2

Contenu du snippet

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 ... @+

A voir également

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.