Re,
Ce n'est pas si simple de traiter les données, ou séries alphanumériques. Enfin, nous sommes en début d'année et à défault de faire un sport, un régime après les fêtes ou encore arrêter de fumer, un lien vers les expressions rationnelles (régulières).
Bon courage, et si tu fais des découvertes intéressantes, penses à communiquer
3 exemples faciles à assimiler :
Public Function SansTexte(c)
'Supprime texte dans cellule
Application.Volatile
Set obj = CreateObject("vbscript.regexp")
obj.Global = True
obj.Pattern = "[a-z,A-Z,_]+"
'obj.Pattern = "\d+"
chaine = c.Value
chaine = obj.Replace(c, "")
SansTexte = Trim(chaine)
End Function
Public Function SansNum(c)
'Supprime Numérique dans cellule
Application.Volatile
Set obj = CreateObject("vbscript.regexp")
obj.Global = True
'obj.Pattern = "[a-z,A-Z,_]+"
obj.Pattern = "\d+"
chaine = c.Value
chaine = obj.Replace(c, "")
SansNum = Trim(chaine)
End Function
Function ValidEmail(eMail As String) As Boolean
'référence : "Microsoft VBScript Regular Expression 5.5"
Dim MyRegExp As RegExp
Dim myMatches As MatchCollection
Set MyRegExp = New RegExp
MyRegExp.Pattern = "^[a-z0-9_.-]+@[a-z0-9.-]{2,}\.[a-z]{2,3}$"
MyRegExp.IgnoreCase = True
MyRegExp.Global = False
Set myMatches = MyRegExp.Execute(eMail)
ValidEmail = (myMatches.Count = 1)
Set myMatches = Nothing
Set MyRegExp = Nothing
End Function