Je tente d’exécuter le code suivant (trouvé sur le forum) afin de contrôler la validité d'une adresse mail sous visual basic:
Imports System.Text.RegularExpressions
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click
If IsMailValide(TextBox1.Text) Then
'[Ton code si True]
Else
MessageBox.Show ("Adresse eMail invalide")
TextBox1.Focus()
End If
End Sub
Private Function IsMailValide(ByVal mailAddress$) As Boolean
Dim pattern$ = _
"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)" & _
"|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"
Return Regex.IsMatch(mailAddress, pattern, RegexOptions.IgnoreCase)
End Function
End Class
Mais une bonne partie du code apparait en rouge :
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click
....
TextBox1.Focus()
....
Dim pattern$ = _
"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)" & _
"|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"
Return Regex.IsMatch(mailAddress, pattern, RegexOptions.IgnoreCase)
....
End Class
Est-ce du VB.net? dans ce cas ,ça explique peut etre pourquoi ça ne marche pas..
Je suis débutante et j'avoue etre complètement perdue! Please Help me ;)
- Non, j'ai "commandButton1" et "UserForm1", j'ai bien textbox1 mais meme quand je renomme ça reste en rouge :o
- et j'utilise Visual Basic à partir d'Excel 2007
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 5 sept. 2012 à 17:08
Donc c'est du VBA et pas du VB.Net
Catégorie modifiée
Ce code ne peut donc pas fonctionner.
Tu peux utiliser celui de <cette source> VB6 qui fonctionnera sous VBA.
Les fichier FRM ou BAS (dans le BAS la fonction qu'il te faut) sont lisibles sous NotePad.
Merci, je vais tester ce code demain au boulot :) et étudier tout ça dès maintenant.
D'après ce que j'ai compris, tu n'utilises pas regexp?
Je vais utiliser cette fonction pour un formulaire d'habilitation, le controle portera sur une colonne pouvant aller jusqu'à 200 lignes. Vaut-il mieux utiliser regexp pour les performances?
Si ça tourne bien comme ça, ça m'arrange comme ça pas besoin de faire cocher aux utilisateurs "Microsoft VBScript Regular Expressions 5.5"
En tout cas, merci beaucoup, j'avais meme pas vu que j'étais dans la mauvaise catégorie
Vous n’avez pas trouvé la réponse que vous recherchez ?