Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

besoin d'un coup de main pour créer une procédure publique.

2 réponses
Avatar
seb.....
Bonjour

Sur un controle dans un formulaire j'ai collé le code suivant que j'ai
trouvé sur le net sur l'évenement apres MAJ :

Private Sub SC_mail_AfterUpdate()
'Reformate correctemment le lien hypertexte
'Vire le http:\\ et le remplace par mailto:
Dim hlk As Hyperlink 'déclare la variable
Set hlk = Me.SC_mail.Hyperlink 'alimente la variable avec le contenu du
champ sc_mail
If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http://
alors
Me.SC_mail = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé
par Mailto:
End If
End Sub

ce code fonctionne.

Comme je dois réutiliser ce code plusieurs fois dans l'application, il me
serait plus simple de l'adapter dans un module dans une procedure nommée

formatemail

Comment adapter ce code, toutes les tentatives que j'ai faites me genere que
des erreurs ?

merci pour votre aide

Seb

2 réponses

Avatar
Thierry (ze Titi)
Bonjour seb.....

Sur un controle dans un formulaire j'ai collé le code suivant que j'ai
trouvé sur le net sur l'évenement apres MAJ :

Private Sub SC_mail_AfterUpdate()
'Reformate correctemment le lien hypertexte
'Vire le http: et le remplace par mailto:
Dim hlk As Hyperlink 'déclare la variable
Set hlk = Me.SC_mail.Hyperlink 'alimente la variable avec le contenu du champ
sc_mail
If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http://
alors
Me.SC_mail = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé par
Mailto:
End If
End Sub

ce code fonctionne.

Comme je dois réutiliser ce code plusieurs fois dans l'application, il me
serait plus simple de l'adapter dans un module dans une procedure nommée

formatemail


Public Function formatemail(nomContrôle As String) As String
Dim hlk As Hyperlink 'déclare la variable
Set hlk = Screen.ActiveForm.Controls(nomContrôle).Hyperlink 'alimente la variable avec le contenu du champ sc_mail
If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http:// alors
formatemail = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé par Mailto:
End If
End Function

et dans l'évènement "Après mise à jour" des contrôles concernés:

=formatemail("lenomducontrôle")

A tester...

--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
seb.....
Merci, je vais tester ceci

Désolé pour le retard...


"Thierry (ze Titi)" a écrit dans le
message de news:
Bonjour seb.....

Sur un controle dans un formulaire j'ai collé le code suivant que j'ai
trouvé sur le net sur l'évenement apres MAJ :

Private Sub SC_mail_AfterUpdate()
'Reformate correctemment le lien hypertexte
'Vire le http: et le remplace par mailto:
Dim hlk As Hyperlink 'déclare la variable
Set hlk = Me.SC_mail.Hyperlink 'alimente la variable avec le contenu du
champ
sc_mail
If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http://
alors
Me.SC_mail = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est remplacé
par
Mailto:
End If
End Sub

ce code fonctionne.

Comme je dois réutiliser ce code plusieurs fois dans l'application, il
me
serait plus simple de l'adapter dans un module dans une procedure nommée

formatemail


Public Function formatemail(nomContrôle As String) As String
Dim hlk As Hyperlink 'déclare la variable
Set hlk = Screen.ActiveForm.Controls(nomContrôle).Hyperlink 'alimente la
variable avec le contenu du champ sc_mail
If Left(hlk.Address, 7) = "http://" Then 'si le debut du lien est http://
alors
formatemail = "#mailto:" & Mid(hlk.Address, 8) & "#" 'http:// est
remplacé par Mailto:
End If
End Function

et dans l'évènement "Après mise à jour" des contrôles concernés:

=formatemail("lenomducontrôle")

A tester...

--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info