Fonction RegExp sous VBA.
Résolu
Villette54
Messages postés
300
Date d'inscription
Statut
Membre
Dernière intervention
-
Villette54 Messages postés 300 Date d'inscription Statut Membre Dernière intervention -
Villette54 Messages postés 300 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai lu plusieurs tuto, mais je ne comprends absolument comment marche la fonction RegExp sur VBA.
Je voudrais m'en servir pour conditionner la saisie dans une textbox sous VBA.
Ci-joint un exemple d'un morceau de code que l'on m'a fourni mais qui ne fonctionne pas.
En espérant pouvoir être aidé.
J'ai lu plusieurs tuto, mais je ne comprends absolument comment marche la fonction RegExp sur VBA.
Je voudrais m'en servir pour conditionner la saisie dans une textbox sous VBA.
Ci-joint un exemple d'un morceau de code que l'on m'a fourni mais qui ne fonctionne pas.
Set RegExDate = New RegExp
With RegExDate
.IgnoreCase = True
.Global = False 'True matches all occurances, False matches the first occurance
.Pattern = "[0-9]{2}/[0-9]{2}/[0-9]{4}"
End With
En espérant pouvoir être aidé.
2 réponses
-
Cher Villette54,
Ton problème est bien de tester si la saisie est une date ? Jette un oeil à la fonction IsDate...
A+ -
Bonjour,
Une autre solution, bâtie sur ce concept de silkyroad:
Private Sub TextBox1_Change() Dim Valeur As Byte TextBox1.MaxLength = 10 'nb caractères maxi autorisé dans le textbox Valeur = Len(TextBox1) If Valeur = 2 Or Valeur = 5 Then TextBox1 = TextBox1 & "/" End Sub 'Ensuite pour vérifier que c'est bien une date qui a été saisie Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) If Not IsDate(TextBox1) Then MsgBox "Format incorrect" TextBox1 = "" Cancel = True 'laisse le focus au textbox End If End Sub