Excel VBA et Outlook...

azerty6767

XLDnaute Junior
Bonjour,

A partir d'excel, j'envoie un message Outlook.
Ce message, issu d'une cellule Excel, est du type "\\Mes Documents\Photos 2007"

Je souhaite que ce message ait l'apparence d'un lien hypertexte, une fois qu'il apparaît dans Outlook, pour que le destinataire puisse cliquer directement sur le lien..!


Pourriez-vous m'aider ? Je ne vois pas de solution...!


D'avance merci,


Olivier
 

Staple1600

XLDnaute Barbatruc
Re : Excel VBA et Outlook...

Bonsoir


A tester

(Cocher la Référence à Microsoft Outlook objetc Library
Dans VBE Outils/Réfrérences)

Code:
sub hypertext_email()
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String
 
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)
 strbody = "<A HREF=""\\Mes Documents\Photos 2007"">Photos 2007</A>"
On Error Resume Next
    With OutMail
        .To = "toto@toto.fr"
        .CC = ""
        .BCC = ""
        .Subject = "Lien hypertexte"
        .HTMLBody = strbody
        .BodyFormat = olFormatHTM
        .Display
    End With
    On Error GoTo 0
 
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

source:ici
 

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Bonjour,

Merci pour l'info ; effectivement cela fonctionne !

une dernière question (subsidiaire ! :) ) :

Je souhaite remplacer l'adresse Mes Documents\... à la ligne

strbody = "<A HREF=""\\Mes Documents\Photos 2007"">Photos 2007</A>"

par le contenu d'une cellule. Par exemple, remplacer par le contenu de la cellule B3.

Dans ce cas, quelle est la "bonne" écriture pour la ligne

strbody=....?




Merci d'avance pour tout !



Olivier
 

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Re-bonjour,

Autre question :

La ligne :
strbody = "<A HREF=""" & Range("B3") & """>Photos 2007</A>"

signifie que "Photos 2007" s'affichera dans le corps du message, avec le lien égal au contenu de la cellule B3, par exemple : C:\Mes documents\Photos 2007.


J'aimerais que dans le corps du message, on puisse lire le lien directement, et qu'il soit cliquable.

Dois-je écrire :

strbody = "<A HREF=""" & Range("B3") & """>Range("B3")</A>" ??

Cela ne fonctionne pas..

Merci pour votre aide !



Olivier
 

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Bonjour,

Super ça marche.

2 dernières questions :

**** J'ai un message HTML du type suivant :

'Composer le message
Msg = "<A>Bonjour,<br></A>" & _
"<A><br></A>" & _
"<A>" & Recipient & "<br></A>" & _
"<A><br></A>" & _
"<A HREF=""" & Range("B10") & """>" & Recipient2 & "<br></A>" & _
"<A><br></A>" & _
"<A><br></A>" & _
"<A>Cordialement,<br></A>" & _
"<A><br></A>"

Question : comment préciser la taille, le type et la couleur de police ? Le problème étant surtout à quel endroit l'indiquer...


**** J'ai donc ce message HTML et j'insère également une signature en HTML
Lorsque j'indique :

.HTMLBody = Msg

, le message s'affiche correctement dans Outlook

Lorque j'indique :
.HTMLBody = Signature

, la signature au format HTML s'affiche correctement


--> mais quand j'indique :

.HTMLBody = Msg & Signature
, c'est la m.... : il n'y a plus que la signature ; le reste du message n'existe plus.

J'ai alors essayé :

.HTMLBody = Msg & "<br> <br>" & Signature

mais pas mieux...


Et là je ne vois vraiment pas ce qui "déconne"...!




Merci par avance,


Olivier,
 

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Bonjour,

Super ça marche.

2 dernières questions :

**** J'ai un message HTML du type suivant :

'Composer le message
Msg = "<A>Bonjour,<br></A>" & _
"<A><br></A>" & _
"<A>" & Recipient & "<br></A>" & _
"<A><br></A>" & _
"<A HREF=""" & Range("B10") & """>" & Recipient2 & "<br></A>" & _
"<A><br></A>" & _
"<A><br></A>" & _
"<A>Cordialement,<br></A>" & _
"<A><br></A>"

Question : comment préciser la taille, le type et la couleur de police ? Le problème étant surtout à quel endroit l'indiquer...


**** J'ai donc ce message HTML et j'insère également une signature en HTML
Lorsque j'indique :

.HTMLBody = Msg

, le message s'affiche correctement dans Outlook

Lorque j'indique :
.HTMLBody = Signature

, la signature au format HTML s'affiche correctement


--> mais quand j'indique :

.HTMLBody = Msg & Signature
, c'est la m.... : il n'y a plus que la signature ; le reste du message n'existe plus.

J'ai alors essayé :

.HTMLBody = Msg & "<br> <br>" & Signature

mais pas mieux...


Et là je ne vois vraiment pas ce qui "déconne"...!




Merci par avance,


Olivier,


Re-bonsoir,

Je me répète...lol

Quelqu'un peut m'aider...? mayday lol !

Merci d'avance ! :)
 

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Je ne comprends pas où est le bug !

Concernant un autre point :


Comment indiquer le type de police (Verdana par exemple) dans la ligne ci-dessous :

"<A HREF=""" & Range("B10") & """>" & Recipient2 & "<br></A>" & _


D'avance merci beaucoup,


Olivier
 
Dernière édition:

azerty6767

XLDnaute Junior
Re : Excel VBA et Outlook...

Merci, cela fonctionne !

Reste toujours mon bug, bug qui a légèrement évolué :

.HTMLbody = Msg & Signature
Résultat--> le message contenu dans "Msg" s'affiche, mais pas la signature


.HTMLbody = Signature
Résultat-->la signature s'affiche correctement

Sans doute un problème de format ou d'espace....



Tous le reste fonctionne vraiment bien !


Bonne soirée et merci à celui ou celle qui pourra encore me conseiller concernant ce p... de bug !



Olivier
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 088
Membres
103 116
dernier inscrit
kutobi87