Sur mon formulaire j'ai une Zone de texte "Email" et un contr=F4le
"btnEmail"
Dans un module le code suivant :
Sub Email()
Dim HLK As Hyperlink
If (IsNull(Email.Value)) Then
MsgBox " Vous devez renseigner l'adresse Email", vbExclamation,
Exit Sub
End If
Set HLK =3D btnEmail.Hyperlink
If InStr(1, Me.Email, "@") > 0 Then
If Left(Me.Email, 7) =3D "mailto:" Then
HLK.Address =3D Me.Email
Else
HLK.Address =3D "mailto:" & Me.Email
End If
ElseIf InStr(1, Me.Email, "http://") > 0 Then
HLK.Address =3D Me.Email
Else
HLK.Address =3D "http://" & Me.Email & "/"
End If
Set HLK =3D Nothing
End Sub
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
Set HLK = Me.Email.Hyperlink If InStr(1, Email, "@") > 0 Then If Left(Email, 7) = "mailto:" Then HLK.Address = Email Else HLK.Address = "mailto:" & Email End If ElseIf InStr(1, Email, "http://") > 0 Then HLK.Address = Email Else HLK.Address = "http://" & Email & "/" <<<<< ICI ERREUR End If Set HLK = Nothing End Sub
La première partie fonctionne, mais il y a toujours une erreur sur la ligne:
HLK.Address = "http://" & Email & "/"
Je cherche........
re,
Quel est le message d'erreur qui survient ??
Dans l'événement 'Sur Clic' de btnEmail tape :
Private Sub btnEmail_Click()
Dim HLK As Hyperlink
If IsNull(Email) Then
MsgBox " Vous devez renseigner l'adresse Email", vbExclamation
Exit Sub
End If
Set HLK = Me.Email.Hyperlink
If InStr(1, Email, "@") > 0 Then
If Left(Email, 7) = "mailto:" Then
HLK.Address = Email
Else
HLK.Address = "mailto:" & Email
End If
ElseIf InStr(1, Email, "http://") > 0 Then
HLK.Address = Email
Else
HLK.Address = "http://" & Email & "/" <<<<< ICI ERREUR
End If
Set HLK = Nothing
End Sub
La première partie fonctionne, mais il y a toujours une erreur sur la
ligne:
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
Set HLK = Me.Email.Hyperlink If InStr(1, Email, "@") > 0 Then If Left(Email, 7) = "mailto:" Then HLK.Address = Email Else HLK.Address = "mailto:" & Email End If ElseIf InStr(1, Email, "http://") > 0 Then HLK.Address = Email Else HLK.Address = "http://" & Email & "/" <<<<< ICI ERREUR End If Set HLK = Nothing End Sub
La première partie fonctionne, mais il y a toujours une erreur sur la ligne:
HLK.Address = "http://" & Email & "/"
Je cherche........
FreeAccess
Re, Dans le doute, je te propose ceci, et si bien sur le but que tu recherche est bien d'insérer une adresse Mail valide dans un champ hypertexte, qui par défaut va le transformer par http://...........
Sur ton Form: >>> un champ hypertexte 'EMAIL'
un bouton de commande 'btnEmail'
Sur l'événement 'Sur clic' du bouton, tape le code suivant:
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
' va transformer l'adresse saisie et la faire débuter par mailto:
Set HLK = Me![Email].Hyperlink If Left(HLK.Address, 7) = "http://" Then Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#" End If End Sub
Tu peux aussi mettre ce code sur l'événement 'Après Màj' de ton champ Email
En espérant avoir compris ce que tu voulais...;-))
Re,
Dans le doute, je te propose ceci, et si bien sur le but que tu
recherche est bien d'insérer une adresse Mail valide dans un champ
hypertexte, qui par défaut va le transformer par http://...........
Sur ton Form: >>> un champ hypertexte 'EMAIL'
un bouton de commande 'btnEmail'
Sur l'événement 'Sur clic' du bouton, tape le code suivant:
Private Sub btnEmail_Click()
Dim HLK As Hyperlink
If IsNull(Email) Then
MsgBox " Vous devez renseigner l'adresse Email", vbExclamation
Exit Sub
End If
' va transformer l'adresse saisie et la faire débuter par mailto:
Set HLK = Me![Email].Hyperlink
If Left(HLK.Address, 7) = "http://" Then
Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#"
End If
End Sub
Tu peux aussi mettre ce code sur l'événement 'Après Màj' de ton
champ Email
En espérant avoir compris ce que tu voulais...;-))
Re, Dans le doute, je te propose ceci, et si bien sur le but que tu recherche est bien d'insérer une adresse Mail valide dans un champ hypertexte, qui par défaut va le transformer par http://...........
Sur ton Form: >>> un champ hypertexte 'EMAIL'
un bouton de commande 'btnEmail'
Sur l'événement 'Sur clic' du bouton, tape le code suivant:
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
' va transformer l'adresse saisie et la faire débuter par mailto:
Set HLK = Me![Email].Hyperlink If Left(HLK.Address, 7) = "http://" Then Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#" End If End Sub
Tu peux aussi mettre ce code sur l'événement 'Après Màj' de ton champ Email
En espérant avoir compris ce que tu voulais...;-))
jg1
Bonsoir,
Merci pour ton code qui me sera utile. Mais pour ma formation ne peut-on pas créer une procédure ou une fonction que je pourrais appeler de n'importe quel formulaire.
Salutations
Bonsoir,
Merci pour ton code qui me sera utile.
Mais pour ma formation ne peut-on pas créer une procédure ou une
fonction que je pourrais appeler de n'importe quel formulaire.
Merci pour ton code qui me sera utile. Mais pour ma formation ne peut-on pas créer une procédure ou une fonction que je pourrais appeler de n'importe quel formulaire.
Salutations
FreeAccess
Bonsoir,
Bien sur que si ;-))
Tu prends le code de la Sub, à partir de Dim HLK........... et tu recopie cela dans un module. Au lieu de Private Sub btnEmail, tu fait une fonction (objet de mon premier post.....) qure tu déclare en Public pour y avoir acces de n'importe ou
Public Function Email() Dim HLK.... ............. ............ End Function
Bonne continuation
Bonsoir,
Bien sur que si ;-))
Tu prends le code de la Sub, à partir de Dim HLK........... et tu
recopie cela dans un module.
Au lieu de Private Sub btnEmail, tu fait une fonction (objet de mon
premier post.....) qure tu déclare en Public pour y avoir acces de
n'importe ou
Public Function Email()
Dim HLK....
.............
............
End Function
Tu prends le code de la Sub, à partir de Dim HLK........... et tu recopie cela dans un module. Au lieu de Private Sub btnEmail, tu fait une fonction (objet de mon premier post.....) qure tu déclare en Public pour y avoir acces de n'importe ou
Public Function Email() Dim HLK.... ............. ............ End Function
Bonne continuation
FreeAccess
Encore moi...
Juste une petite précision, quand tu crée une fonction, comme celle-ci peut être appelée de n'importe ou, il faut bien sur que ta fonction ne contienne pas par exemple le nom d'un champ particulier...
Encore moi...
Juste une petite précision, quand tu crée une fonction, comme
celle-ci peut être appelée de n'importe ou, il faut bien sur que ta
fonction ne contienne pas par exemple le nom d'un champ particulier...
Juste une petite précision, quand tu crée une fonction, comme celle-ci peut être appelée de n'importe ou, il faut bien sur que ta fonction ne contienne pas par exemple le nom d'un champ particulier...
jg1
Bonjour,
J'ai essayer ton code
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
' va transformer l'adresse saisie et la faire débuter par mailto: Set HLK = Me![Email].Hyperlink If Left(HLK.Address, 7) = "http://" Then Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#" End If End Sub
Mais il ne se passe rien. Le code passe directement de " Set HLK = Me![Email].Hyperlink " à End if
Pour la création de la fonction comment dans mon cas remplacer les noms de champs particulier ?
Salutations
Bonjour,
J'ai essayer ton code
Private Sub btnEmail_Click()
Dim HLK As Hyperlink
If IsNull(Email) Then
MsgBox " Vous devez renseigner l'adresse Email", vbExclamation
Exit Sub
End If
' va transformer l'adresse saisie et la faire débuter par mailto:
Set HLK = Me![Email].Hyperlink
If Left(HLK.Address, 7) = "http://" Then
Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#"
End If
End Sub
Mais il ne se passe rien. Le code passe directement de " Set HLK =
Me![Email].Hyperlink " à End if
Pour la création de la fonction comment dans mon cas remplacer les
noms de champs particulier ?
Private Sub btnEmail_Click() Dim HLK As Hyperlink If IsNull(Email) Then MsgBox " Vous devez renseigner l'adresse Email", vbExclamation Exit Sub End If
' va transformer l'adresse saisie et la faire débuter par mailto: Set HLK = Me![Email].Hyperlink If Left(HLK.Address, 7) = "http://" Then Me.Email = "#mailto:" & Mid(HLK.Address, 8) & "#" End If End Sub
Mais il ne se passe rien. Le code passe directement de " Set HLK = Me![Email].Hyperlink " à End if
Pour la création de la fonction comment dans mon cas remplacer les noms de champs particulier ?
Salutations
FreeAccess
Bonjour,
Bien sur ce code n'est qu'un exemple.........mais il fonctionne correctement ;-)
Le source contrôle de ton champ Email doit être de type 'Lien Hypertexte' Par défaut si tu entre une adresse mail dans ce champ, il sera automatiquement précédé de HTTP://...... Donc si tu veux en cliquant directement sur ce champ, ouvrir ta messagerie pour envoyer un mail...et bien là tout faux, ACCESS ici va ouvrir ton navigateur (IE, ....) Donc ce code ne fait que supprimer la partie HTTP.... et formater ton adresse mail en la faisant précéder de mailto:
Bonjour,
Bien sur ce code n'est qu'un exemple.........mais il fonctionne
correctement ;-)
Le source contrôle de ton champ Email doit être de type 'Lien
Hypertexte'
Par défaut si tu entre une adresse mail dans ce champ, il sera
automatiquement précédé de HTTP://......
Donc si tu veux en cliquant directement sur ce champ, ouvrir ta
messagerie pour envoyer un mail...et bien là tout faux, ACCESS ici va
ouvrir ton navigateur (IE, ....)
Donc ce code ne fait que supprimer la partie HTTP.... et formater ton
adresse mail en la faisant précéder de mailto:adresseMail@coucou.fr
Bien sur ce code n'est qu'un exemple.........mais il fonctionne correctement ;-)
Le source contrôle de ton champ Email doit être de type 'Lien Hypertexte' Par défaut si tu entre une adresse mail dans ce champ, il sera automatiquement précédé de HTTP://...... Donc si tu veux en cliquant directement sur ce champ, ouvrir ta messagerie pour envoyer un mail...et bien là tout faux, ACCESS ici va ouvrir ton navigateur (IE, ....) Donc ce code ne fait que supprimer la partie HTTP.... et formater ton adresse mail en la faisant précéder de mailto:
jg1
Bonsoir,
Ok le code fonctionne j'avais laissé le champ Email en champ Texte.
Maintenant j'aimerai bien mettre ce code dans une fonction, mais comment remplacer les noms des champs particuliers ? Salutations
Bonsoir,
Ok le code fonctionne j'avais laissé le champ Email en champ Texte.
Maintenant j'aimerai bien mettre ce code dans une fonction, mais
comment remplacer les
noms des champs particuliers ?
Salutations