Insertion d'un lien hypertexte et pièce jointe dans un mail généré par VBA

Bonjour à tous,

Je suis débutante en VBA. Le je sèche complètement sur un sujet. J'ai crée un tableau de suivi des absences des assistantes, dans ce tableau j'ai inséré une image ou lorsque l'on clique dessus un mail se génère afin d'envoyer l'info à nos supérieurs par Outlook. Par contre je voudrais insérer un lien hypertexte qui renvoi sur le serveur ou le tableau est rangé, et ou le mettre en pièce jointe. J'ai regardé sur le forum et sur Internet mais je ne trouve pas la solution. J'espère que vous pourrez m'aider.

Le lien se trouve dans le corps du mail.

Ci-dessous le code que j'ai utilisé. (j'ai juste supprimé les @mails utilisé (.To). Je vous ai mis le tableau en pièce jointe.

Sub Graphique2_Cliquer()

Dim LeMail As Variant

Set LeMail = CreateObject("Outlook.Application")

With LeMail.CreateItem(olMailItem)
.Subject = "Le calendrier des absences des assistantes a été mis à jour"
.To = "sabrina.schilling0610@gmail.com"
.Body = "Bonjour," & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Le calendrier des absences des assistantes a été mis à jour. Merci d'en prendre connaissance." & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Le tableau est disponible sous : O:\01 Xchange\xx_Suivi des congés" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Cordialement."
.Display

End With

End Sub

Bonjour,

j'ai inséré une image ou lorsque l'on clique dessus un mail se génère afin d'envoyer l'info à nos supérieurs par Outlook.

je ne vois pas l'image, mais ce n'est sans doute pas le sujet

Par contre je voudrais insérer un lien hypertexte qui renvoi sur le serveur ou le tableau est rangé, et ou le mettre en pièce jointe.

il faut passer en htmlbody :

  • remplace .body = ___________ par .htmlbody = _____________ & .htmlbody
  • ensuite remplace Chr(13) & Chr(10) par "<br>" qui est la balise de changement de ligne en html
  • pour le lien hypertexte, il faut un ancrage comme ceci "<a href=""http://_______________"">cliquer ici</a>"

essaie ceci

With LeMail.CreateItem(olMailItem)
.Subject = "Le calendrier des absences des assistantes a été mis à jour"
.To = "sabrina.schilling0610@gmail.com"
.htmlBody = "Bonjour,<br><br>Le calendrier des absences des assistantes a été mis à jour. Merci d'en prendre connaissance.<br><br>Le tableau est disponible sous : <a href=""file:\\O:\01 Xchange\xx_Suivi des congés"">Suivi des congés</a><br><br>Cordialement." & .htmlBody
.Display

avec peut-être quelques réglages

Une précision ... tout le monde a-t-il le raccourci O: ?

Il vaudrait mieux y mettre l'adresse du serveur comme ceci :

"_______________<a href=""\\serveur\dossier"">ici<w/a>_________________"

Bonjour,

Merci de votre réponse

Concernant l'image, il s'agit du petit avion en dessous du tableau

Ça fonctionne bien, cependant. Cependant je ne sais pas, nous sommes tous sur le même serveur, donc cela devrait être pareil non ?

Je ne sais pas si je le saisie correctement mais quand je mets

"_______________<a href=""\\serveur\dossier"">ici<w/a>_________________"

j'ai un message d'erreur quand j'essaie d'ouvrir le lien.

Désolé, c'est ma faut, il y a un w en trop !

"_______________<a href=""\\serveur\dossier"">ici</a>_________________"

je pense que c'est plus stable en mettant directement le nom du serveur

Bonjour,

Je remplace bien ""\\serveur\dossier"" par le nom que j'ai sur le serveur ?

Car si c'est le cas, cela ne fonctionne pas, quand je clique sur le lien il me dit qu'il ne trouve pas le chemin.

Bonjour,

pas grave, continue avec O:

je ne sais pas trop comment expliquer simplement comment retrouver ce qui correspond au raccourci que l'on met parfois (dans mon cas Z:)

Merci :)

J'ai fait un test, tout le monde n'arrive pas au fichier en suivant le lien.

Sub Graphique2_Cliquer()

Dim LeMail As Variant

Set LeMail = CreateObject("Outlook.Application")

With LeMail.CreateItem(olMailItem)
.Subject = "Le calendrier des absences des assistantes a été mis à jour"
.To = "sabrina.schilling0610@gmail.com"
.HTMLBody = "Bonjour,<br><br>Le calendrier des absences des assistantes a été mis à jour. Merci d'en prendre connaissance.<br><br>Le tableau est disponible ici : <a href=""\\svrxxx-dddd.jdjd.net\01 Xchange\xx_Suivi des congés"">Suivi des congés</a><br><br>Cordialement." & .HTMLBody
.Display

End With

End Sub

C'est peut-être faux comme j'ai écrit le code

Si certaines y arrivent et pas d'autres, ce n'est pas le code qui est en cause. Ont-ils les droits d'accès au serveur ?

Oui c'est sur un serveur Commun

Est-ce qu'il peuvent faire un clic droit sur le lien, copier le lien dans un fichier texte et comparer à ce que tu souhaites ? voire le mettre dans la barre d'adresse internet et voir s'il y accèdent.

Autre solution, remplace les espace par %20

href=""\\svrxxx-dddd.jdjd.net\01%20Xchange\xx_Suivi%20des%20congés""
Rechercher des sujets similaires à "insertion lien hypertexte piece jointe mail genere vba"