Insérer un lien hypertexte dans un mail envoyé par VBA
Fermé
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
-
7 avril 2020 à 12:37
yg_be Messages postés 23312 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 novembre 2024 - 9 avril 2020 à 18:26
yg_be Messages postés 23312 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 novembre 2024 - 9 avril 2020 à 18:26
A voir également:
- Insérer un lien hypertexte dans un mail envoyé par VBA
- Créer un lien pour partager des photos - Guide
- Verifier un lien - Guide
- Yahoo mail - Accueil - Mail
- Insérer une vidéo dans powerpoint - Guide
- Lien url - Guide
5 réponses
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
Ambassadeur
1 552
7 avril 2020 à 14:06
7 avril 2020 à 14:06
bonjour, il me semble que tu n'utilises pas la variable lien.
as-tu examiné le contenu de la variable corps?
as-tu examiné le contenu de la variable corps?
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
7 avril 2020 à 16:45
7 avril 2020 à 16:45
Bonjour,
merci pour la réponse.
J'ai modifié le code pour que le corps du message affiche bien le fichier créé mais pas moyen de faire en sorte que le mot "lien" soit sous forme de lien le reflet du fichier indiqué par csPath1 & Myname.
Merci
Laurent
Sub SendMailhyperlink()
Dim lien As String
Dim csPath1 As String
Dim Myname As String
Dim MonOutlook As Object
Dim MonMessage As Object
csPath1 = "P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\"
Myname = ("ANNEXE_BPOST_MINI_PACK_SCAN") & "_" & Sheets("MAIN MINI PACK SCAN").Range("C4") & "_" & Sheets("Annexe Transport").Range("L5") & "_" & Sheets("Annexe Transport").Range("M5") ' & "_" & Format(Date, "mmmm_yyyy")
lien = csPath1 & Myname
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.CreateItem(0)
MonMessage.BodyFormat = 2
corps = "<HTML><BODY>"
MonMessage.To = "xxx@xxx.com"
MonMessage.cc = ""
MonMessage.Subject = "Annexe facture"
corps = corps & "Bonjour,"
corps = corps & "<p>"
corps = corps & "<p> Ci-dessous le lien vers l'annexe qui a ?t? cr?e : "".</p>"
corps = corps & csPath1
corps = corps & Myname
lien = csPath1 & Myname
corps = corps & "<a href=""csPath1 & Myname"">lien</a></p>"
corps = corps & "</BODY></HTML>"
MonMessage.HTMLBody = corps
MonMessage.display "true"
End Sub
merci pour la réponse.
J'ai modifié le code pour que le corps du message affiche bien le fichier créé mais pas moyen de faire en sorte que le mot "lien" soit sous forme de lien le reflet du fichier indiqué par csPath1 & Myname.
Merci
Laurent
Sub SendMailhyperlink()
Dim lien As String
Dim csPath1 As String
Dim Myname As String
Dim MonOutlook As Object
Dim MonMessage As Object
csPath1 = "P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\"
Myname = ("ANNEXE_BPOST_MINI_PACK_SCAN") & "_" & Sheets("MAIN MINI PACK SCAN").Range("C4") & "_" & Sheets("Annexe Transport").Range("L5") & "_" & Sheets("Annexe Transport").Range("M5") ' & "_" & Format(Date, "mmmm_yyyy")
lien = csPath1 & Myname
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.CreateItem(0)
MonMessage.BodyFormat = 2
corps = "<HTML><BODY>"
MonMessage.To = "xxx@xxx.com"
MonMessage.cc = ""
MonMessage.Subject = "Annexe facture"
corps = corps & "Bonjour,"
corps = corps & "<p>"
corps = corps & "<p> Ci-dessous le lien vers l'annexe qui a ?t? cr?e : "".</p>"
corps = corps & csPath1
corps = corps & Myname
lien = csPath1 & Myname
corps = corps & "<a href=""csPath1 & Myname"">lien</a></p>"
corps = corps & "</BODY></HTML>"
MonMessage.HTMLBody = corps
MonMessage.display "true"
End Sub
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
1 552
Modifié le 7 avril 2020 à 17:05
Modifié le 7 avril 2020 à 17:05
peux-tu utiliser les balises de code quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
que reçois-tu comme texte dans le mail?
je suggère que tu commences avec des programmes VBA plus simples.
que reçois-tu comme texte dans le mail?
je suggère que tu commences avec des programmes VBA plus simples.
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
7 avril 2020 à 17:15
7 avril 2020 à 17:15
Ho pardon, j'étais persuadé d'avoir utilisé l'onglet code….
voici ci-dessous ce qui s'affiche :
Bonjour,
Ci-dessous le lien vers l'annexe qui a été crée : ".
P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\ANNEXE_BPOST_MINI_PACK_SCAN_195103931_12_2019lien
voici ci-dessous ce qui s'affiche :
Bonjour,
Ci-dessous le lien vers l'annexe qui a été crée : ".
P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\ANNEXE_BPOST_MINI_PACK_SCAN_195103931_12_2019lien
Sub SendMailhyperlink() Dim lien As String Dim csPath1 As String Dim Myname As String Dim MonOutlook As Object Dim MonMessage As Object csPath1 = "P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\" Myname = ("ANNEXE_BPOST_MINI_PACK_SCAN") & "_" & Sheets("MAIN MINI PACK SCAN").Range("C4") & "_" & Sheets("Annexe Transport").Range("L5") & "_" & Sheets("Annexe Transport").Range("M5") ' & "_" & Format(Date, "mmmm_yyyy") lien = csPath1 & Myname Set MonOutlook = CreateObject("Outlook.Application") Set MonMessage = MonOutlook.CreateItem(0) MonMessage.BodyFormat = 2 corps = "<HTML><BODY>" MonMessage.To = "xxx@xxx.com" MonMessage.cc = "" MonMessage.Subject = "Annexe facture" corps = corps & "Bonjour," corps = corps & "<p>" corps = corps & "<p> Ci-dessous le lien vers l'annexe qui a ?t? cr?e : "".</p>" corps = corps & csPath1 corps = corps & Myname lien = csPath1 & Myname corps = corps & "<a href=""csPath1 & Myname"">lien</a></p>" corps = corps & "</BODY></HTML>" MonMessage.HTMLBody = corps MonMessage.display "true" End Sub
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
1 552
Modifié le 7 avril 2020 à 17:25
Modifié le 7 avril 2020 à 17:25
et quand tu cliques sur le lien, que vois-tu?
pour t'aider à comprendre ce que tu fais, je suggère de remplacer
par
que vois-tu quand tu exécutes cela?
pour t'aider à comprendre ce que tu fais, je suggère de remplacer
corps = corps & "<a href=""csPath1 & Myname"">lien</a></p>"
par
dim url as string url= "<a href=""csPath1 & Myname"">lien</a>" corps = corps & url & "</p>" msgbox url
que vois-tu quand tu exécutes cela?
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
>
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
7 avril 2020 à 17:41
7 avril 2020 à 17:41
Bonsoir,
J'essayerai cela demain matin et je te reviens dès que je l'aurai intégré à mon code.
Merci
Laurent
J'essayerai cela demain matin et je te reviens dès que je l'aurai intégré à mon code.
Merci
Laurent
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
9 avril 2020 à 17:11
9 avril 2020 à 17:11
Bonsoir,
Voici ce qui s'affiche lorsque j'ai remplacé la partie du code.
Voici ce qui s'affiche lorsque j'ai remplacé la partie du code.
Sub SendMailhyperlink() Dim lien As String Dim csPath1 As String Dim Myname As String Dim MonOutlook As Object Dim MonMessage As Object Dim url As String csPath1 = "P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\" Myname = ("ANNEXE_BPOST_MINI_PACK_SCAN") & "_" & Sheets("MAIN MINI PACK SCAN").Range("C4") & "_" & Sheets("Annexe Transport").Range("L5") & "_" & Sheets("Annexe Transport").Range("M5") ' & "_" & Format(Date, "mmmm_yyyy") 'lien = csPath1 & Myname Set MonOutlook = CreateObject("Outlook.Application") Set MonMessage = MonOutlook.CreateItem(0) MonMessage.BodyFormat = 2 corps = "<HTML><BODY>" MonMessage.To = "xxx@xxx.com" MonMessage.cc = "" MonMessage.Subject = "Annexe facture" corps = corps & "Bonjour," corps = corps & "<p>" corps = corps & "<p> Ci-dessous le lien vers l'annexe qui a ?t? cr?e : "".</p>" corps = corps & csPath1 corps = corps & Myname 'lien = csPath1 & Myname 'corps = corps & "<a href= lien & csPath1>""clique ici""</a></p>" url = "<a href=""csPath1 & Myname"">lien</a>" corps = corps & url & "</p>" corps = corps & "</BODY></HTML>" MsgBox url MonMessage.HTMLBody = corps MonMessage.Display "true" End Sub
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
1 552
9 avril 2020 à 17:18
9 avril 2020 à 17:18
ne vois-tu pas que tu n'utilises pas les variables quand tu écris
il est préférable de faire:
url = "<a href=""csPath1 & Myname"">lien</a>"
il est préférable de faire:
url = "<a href=" + csPath1 + Myname + ">lien</a>"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
creator3_1969
Messages postés
13
Date d'inscription
vendredi 25 janvier 2019
Statut
Membre
Dernière intervention
9 avril 2020
9 avril 2020 à 18:19
9 avril 2020 à 18:19
Bonsoir,
Voilà j'ai finalement trouvé pour que tout fonctionne :-)
Voilà ce que cela donne avant que j'achève de modifier le code pour que le mail s'envoie automatiquement.
Ci-dessous le code, cela pourra servir.
Merci de ton aide !
Laurent
Voilà j'ai finalement trouvé pour que tout fonctionne :-)
Voilà ce que cela donne avant que j'achève de modifier le code pour que le mail s'envoie automatiquement.
Ci-dessous le code, cela pourra servir.
Merci de ton aide !
Laurent
Sub SendMailhyperlink() Dim lien As String Dim csPath1 As String Dim Myname As String Dim MonOutlook As Object Dim MonMessage As Object Dim url As String csPath1 = "P:\Finance Department\Finance_Transport\Test_PAS_TOUCHE_LAURENT\" Myname = ("ANNEXE_BPOST_MINI_PACK_SCAN") & "_" & Sheets("MAIN MINI PACK SCAN").Range("C4") & "_" & Sheets("Annexe Transport").Range("L5") & "_" & Sheets("Annexe Transport").Range("M5") & ".xlsm" ' & "_" & Format(Date, "mmmm_yyyy") Set MonOutlook = CreateObject("Outlook.Application") Set MonMessage = MonOutlook.CreateItem(0) MonMessage.BodyFormat = 2 corps = "<HTML><BODY>" MonMessage.To = "xxx@xxx.com" MonMessage.Subject = "Annexe facture " & Myname corps = corps & "Bonjour," corps = corps & "<p>" corps = corps & "L'annexe ci-apr?s a ?t? cr?? : " & Myname corps = corps & "<p>" corps = corps & "Ci-dessous vous trouverez le lien pour y avoir directement acc?s." corps = corps & "<p>" lien = csPath1 & Myname corps = corps & "<p>" corps = corps & "<b><A HREF=""" & lien & """> lien </A></b>" corps = corps & "<p>" corps = corps & "Le fichier s'ouvrira sur votre page Annexe Finance." corps = corps & "<p>" corps = corps & "Bien ? vous," corps = corps & "<p>" corps = corps & "Laurent," corps = corps & "</BODY></HTML>" MonMessage.HTMLBody = corps MonMessage.Display "true"
yg_be
Messages postés
23312
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
6 novembre 2024
1 552
9 avril 2020 à 18:26
9 avril 2020 à 18:26
parfait, peux-tu marquer la discussion comme résolue?