Lien hypertexte par mail [Résolu]

Signaler
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour à tous,

J'ai créé un fichier dans lequel sont repris des actions à effectuer. Pour chaque nouvelle action, un mail est envoyé au chargé de l'affaire et pour faciliter l'accès au fichier pour les détails de l'acion. Je voudrais envoyer un mail avec le lien de ce fichier. J'ai essayé de régler ce problème par différentes solutions et aucunes n'étant concluante, je vous demande donc de l'aide pour effectuer ce mail.

Je vous laisse le code :
Sub mail()

'récupère l'adresse mail du responsable action désigné
dernière_ligne = Sheets("Listes déroulantes").Range("C65536").End(xlUp).Row
Sheets("Listes déroulantes").Select
Set celluletrouvee = Range("C2:C" & dernière_ligne).Find(Responsable, lookat:=xlWhole)
ligne = celluletrouvee.Row
col = celluletrouvee.Column
nom_destinataire = Cells(ligne, 3).Value
mail_destinataire = Cells(ligne, 4).Value

Dim MonOutlook, MonMessage As Object
Dim Corps As String

Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.createitem(0)

MonMessage.To = mail_destinataire
MonMessage.Subject = "Nouvelle action Méthodes PRM"
Corps0 = "Bonjour " & nom_destinataire & Chr(10) & Chr(10)
Corps1 = "Une nouvelle action, numérotée " & num_action & " vous a été assignée sur le fichier de suivi des actions." & Chr(10) & Chr(10)
Corps2 = "Ce fichier est disponible sous :" & Chr(10) & Chr(10)
Corps3 = Application.ThisWorkbook.FullName & Chr(10) & Chr(10)
Corps4 = "Cordialement"

MonMessage.body = Corps0 & Corps1 & Corps2 & Corps3 & Corps4
MonMessage.Send

End Sub


Merci.
K.B.

26 réponses

Messages postés
82
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
14 avril 2012

Bonjour cher non manchot,

Ça me fait tout drôle de parler à un génie qui comprend tout en 15 minutes et qui s'est formé tout seul avant même l'arrivée d'Internet.... C'est une expérience rare. Chapeau !!!

J'ai cherché aussi un peu sur la toile des infos sur l'utilisation de la balise <VAR>. En effet la syntaxe se trouve en 30 secondes, mais que faire d'une syntaxe sans exemples d'application... au problème évoqué.

Enfin, et juste pour dire, une syntaxe du type :
Corps="Voici le lien Lien" marche pas mal non plus, si on explique au néophyte, qui n'a pas la science infuse, l'usage du mélange des ' et des " en VBA et en HTML.

Cordialement
JC
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

Personne ne sait ?

Je précise que j'ai fait beaucoup de recherche mais malheureusement, je n'ai pas trop ce qui me convenait.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Bonjour,
Tu auras peut-être une réponse lorsque ta demande sera suffisamment précise et détaillée.
Ce n('est pour l'instant pas encore le cas.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

C'est sûr mais si on ne me dit pas que ma demande n'est pas assez précise, je ne peux pas le savoir ;)

Sinon, ce que je veux faire c'est, dans le mail que j'envoie par la macro, insérer un lien pointant vers "Application.ThisWorkbook.FullName" (donc le chemin complet du fichier) où l'utilisateur recevant ce message puisse cliquer dessus pour ouvrir directement le fichier.
Pour l'instant voici le mail qui est envoyé affiche seulement le chemin complet mais n'insère pas de lien et donc on ne peut cliquer dessus pour ouvrir le fichier.

Bonjour K. 

Une nouvelle action, numérotée 65 vous a été assignée sur le fichier de suivi des actions Méthodes. 

Ce fichier est disponible sous : 

S:\...\...\...\Suivi actions + indicateurs Méthodes V3.xls

Cordialement 
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

Désolé pour ce double post mais il me semble qu'on ne peut pas modifier ses messages (ou alors je vois pas :D)

J'ai pu me débrouiller un peu avec :
MonMessage.HTMLBody

au lieu de
MonMessage.Body
et avec l'ajout de la balise
Chemin
mais du coup, je n'arrive pas à mettre une variable dans cette balise (le chemin du fichier risque de souvent changer)
Est-ce possible ?
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Apprendre les balises html ===>>
http://www.mesinsectes.com/index.php?post/2009/01/25/Quelques-balises
L'une d'entre elles sert à cela.

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Tapez le texte de l'url ici.
voir <VAR>

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

Merci pour ce conseil. Malheureusement, je ne sais pas comment la déclarer.
J'ai essayé plusieurs choses mais cela ne marche pas.
Sur votre lien, il indique de mettre la variable entre les balises <var> et </var>. Ce que j'ai, entre autre fait.
Application.ThisWorkbook.FullName</var>'>lien du fichier

Le code ci-dessus écrit : "lien du ficher" avec un envoi vers le lien : "<var>Application.ThisWorkbook.FullName</var>"

Ce code ci :
Application.ThisWorkbook.FullName</var>>lien du fichier

affiche : "Application.ThisWorkbook.FullName>lien du fichier" et envoi vers le lien : "<var>"

J'ai également essayé ceci :
chemin = "<var>Application.ThisWorkbook.FullName</var>"
lien du fichier


ou

chemin = "<var>Application.ThisWorkbook.FullName</var>"
lien du fichier


Pour les mêmes résultats.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Ah !
Mais moi, Kignol, lorsque je vois ceci (entre autres) :
chemin = "<var>Application.ThisWorkbook.FullName</var>"

je me dis qu'il vaut mieux s'arrêter là ou, comme je le fais maintenant, t'inviter à reprendre les choses à leur vraiment tout début . Ce sera mieux et je ne me sentirai pas complice


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en complément et jamais en substitution de l'aide en ligne.
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

Je veux bien mais essayez de mettre cette variable sans les guillemets... bah une erreur (il attend une expression);). C'est donc pour cela que je mets ces signes en espérant régler cette erreur.

Je sais bien ce que font ces guillemets, mais on sait jamais () et c'est bien pour cela que je précise que j'ai effectué plusieurs tests et qu'ils n'ont pas marché.

Dans mon précédent message, je mets seulement 4 essais (qui peuvent paraître fou certainement pour ceux sont des personnes expérimentés, j'en conviens) parmi tant d'autres.

Enfin, je me permet de citer votre présentation :
Je n'ai pas réellement mauvais caractère, mais ne supporte que très difficilement la fainéantise notoire et encore plus difficilement que l'on tente de développer sans connaître les bases élémentaires de son outil de développement.


Je vois bien que vous y mettez que vous supportez difficilement les personnes qui n'y connaissent rien. Au risque de me répéter, j'essayais de régler une erreur en essayant plusieurs solutions.

Mais quelque chose de plus intéressant toujours dans votre présentation :
Dans cet esprit, j'aide plus volontiers un débutant qui se retrousse les manches qu'un "ancien" qui montre qu'il ne s'y est jamais "réellement mis" et n'a jamais fait un effort personnel, privilégiant l'utilisation de copier/coller.


OK, je suis un débutant mais ce n'est pas l'envie d'apprendre qui me manque ni la volonté et que selon votre présentation, vous seriez plus enclin à m'aider qu'à me dire : "vous n'avez pas les compétences nécessaires pour que je vous aide"

À bon entendeur
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Tu as mal lu !
j'aide plus volontiers un débutant [u]qui se retrousse les manches
/u

Se retrousser les manches, c'est bûcher et non tâtonner au hasard.
Aucun de tes "essais" ne montre que tu as commencé à vouloir apprendre, comprendre .... Bien au contraire

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en complément et jamais en substitution de l'aide en ligne.
Messages postés
10
Date d'inscription
mardi 3 avril 2012
Statut
Membre
Dernière intervention
16 avril 2012

Ces "essais" contiennent quand même une logique. Peut être pas la votre, mais la mienne tout débutant que je suis.

J'ai effectué des recherches avec toutes les ressources mises à ma disposition (amis, collègues, google, vbfrance, ...) et aucunes ne m'a donné des réponses alors enfin, je demande de l'aide sur ce forum avec mon exemple concret parce que je bloque sur la dernière phase de mon fichier qui commence à avoir une certaine dose (et d'heure) de programmation VBA et vous me dites que je ne bûche pas pour comprendre et apprendre de mes erreurs...
Après je vous ai peut être paru comme vous le décrivait mais ce n'est pas mon impression et je ne suis pas comme cela.

Libre à vous de penser comme vous le voulez par contre .

Ceci dit, vous avez sûrement été un novice et avez aussi certainement commis quelques erreurs lors de vos différentes programmations. Quelque soit la méthode de votre apprentissage (formation, autodidacte, ...), si vous aviez pu avoir l'aide (sans discrimination) de quelqu'un d’expérimenté (pratique dans le cadre d'une formation ) cela vous aurait fait au moins plaisir et au mieux encouragé de continuer à apprendre toujours plus.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Totalement autodidacte est la réponse - Et à une époque à laquelle aucun forum n'existait (et sans accès internet, de toutes manières).
Et certaines choses ne demandent pas plus de 15 minutes de lecture de l'aide en ligne. Et c'est à peu près le temps que je leur ai consacré, dès le début.
Pour ton info (j'ai quand-même voulu "voir") : j'ai fait un petit tour sur la toile (que je n'avais pas, moi) , pour voir si l'on y trouvait ce que tu cherches : une syntaxe ===>> trouvé en moins de 30 secondes.
Je ne suis pas manchot, mais toi non plus, hein ...
Au boulot.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en complément et jamais en substitution de l'aide en ligne.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Bonjour, nerim,
si on explique au néophyte, qui n'a pas la science infuse, l'usage du mélange des ' et des " en VBA et et des " en VBA et en HTML.

Mais tu as oublié de le faire . Explique-lui donc cela, maintenant, si tu le crois utile et tellement éloigné des connaissances de base.

PS : corrige dans la foulée ta syntaxe, hein.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'e
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Bon...
J'aurais préféré voir nerim se corriger lui-même
ce n'est pas :
"Voici le lien Lien"
mais
"Voici le lien lien"


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'e
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Puisque nous en sommes à encourager le copier/coller, allons-y donc.
Voilà ce qui devrait inspirer kignol :
Dim LOutlook As Object
Dim texte As Outlook.MailItem
Dim chainehtml As String
Set LOutlook = CreateObject("Outlook.Application")
Set texte = LOutlook.CreateItem(0)
texte.BodyFormat = olFormatHTML
lien = "http://www.......blabla ......."
chainehtml = "<html>" & vbCrLf & "" & vbCrLf & "Hello
" & vbCrLf & "je te fais parvenir (lien) ci-après " & _
"[ & lien &   ici]" & vbCrLf & "ce que je t'avais promis" & vbCrLf & "" & vbCrLf & "</html>"
texte.HTMLBody = chainehtml
texte.Display "true"
Set LOutlook = Nothing


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'e
Messages postés
82
Date d'inscription
samedi 13 décembre 2003
Statut
Membre
Dernière intervention
14 avril 2012

Bonjour ucfoutu

Merci pour la correction de l'espace en trop. Ceci dit j'ai en effet expliqué en message perso à kignol le principe des " et des '. Et le court exemple de syntaxe fourni peut être difficilement être simplement copié/collé mais doit être adapté à son code. J'espère que tu n'as - pardon que vous n'avez (je me laisse aller au travers habituel des forums où les cracks tutoient les gens qu'ils conseillent) - jamais été enseignant ou formateur.

Au fait, c'est marrant, vous faites la même erreur que celle que vous me reprochez : l'espace avant ici dans "> ici est aussi inutile que le mien avant Lien

Enfin, question sérieuse et non polémique : je pensais que les apostrophes entourant le lien dans <HREF étaient obligatoires en HTML normalisé. Il semble que ce ne soit pas cas. Pouvez-vous me le confirmer. Merci de votre réponse.

Cordialement
JC
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
l'erreur n'était pas un espace !
L'erreur était l'absence du signe =
Bonne nuit.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développer sur ses bases.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
je pensais que les apostrophes entourant le lien dans <HREF étaient obligatoires en HTML normalisé.

oui bien vu (j'ai écrit à main levée et les ai oubliées alors que je les avaient mises dans mon exemple précédent) . Corriger ==>>
" ici" & vbCrLf & "ce que je t'avais promis" & vbCrLf & "" & vbCrLf & "</html>"


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développer sur ses bases.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Et tu peux me tutoyer, hein ! Je te tutoie bien, moi !


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développer sur ses bases.