brucealmighty
Messages postés33Date d'inscriptionlundi 28 mai 2012StatutMembreDernière intervention14 août 2018
-
Modifié par brucealmighty le 10/10/2016 à 09:14
brucealmighty
Messages postés33Date d'inscriptionlundi 28 mai 2012StatutMembreDernière intervention14 août 2018
-
20 oct. 2016 à 03:22
Bonjour à tous,
Je me permets aujourd'hui de solliciter votre aide car je coince depuis plusieurs heures sur ce problème...
J'ai des diagrammes créés sur Excel que je souhaite envoyer par email via Outlook.
Je dois rédiger un court texte et insérer au milieu de ce texte le diagramme en question.
Le problème est que le diagramme s'insère tout en haut du message.
J'ai écrit ces quelques lignes encore infructueuses:
Sub UseOutlook()
Dim MyOutlook As Object Dim MyMessage As Object Set MyOutlook = CreateObject("Outlook.Application") Set MyMessage = MyOutlook.CreateItem(0) MyMessage.To = "pdg@entreprise.fr" MyMessage.Subject = "Rapport diagramme"
EmailBody = "Bonjour à tous," & vbNewLine & vbNewLine EmailBody = EmailBody & "Voici le diagramme tant attendu:" & vbNewLine & vbNewLine
EmailBody = EmailBody & "Merci de me faire part de vos retours concernant ce diagramme." & vbNewLine & vbNewLine EmailBody = EmailBody & "Cordialement," & vbNewLine & "Bruce"
MyMessage.Body = EmailBody
MyMessage.Display Set MyOutlook = Nothing
End Sub
Le diagramme devrait se coincer entre "voici..." et "merci de me faire part...".
Je souhaiterais éviter de faire appel à toute libraire ou add-on additionnel à Outlook. Le but est qu'un débutant puisse cliquer directement sur un bouton et générer les emails sans avoir à trifouiller les menus.
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201822 11 oct. 2016 à 22:05
Bonjour,
De cette manière, je ne sais pas trop, mais si tu pouvais mettre tout ton texte en premier, tu pourrais essayer ceci
Sub EnvoiDiagramme() Sheets("Diagrammes").Range("A2:M25").Select ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope .Introduction = "Bonjour à tous," & vbNewLine & vbNewLine & "Voici le diagramme tant attendu:" & _ vbNewLine & vbNewLine & "Merci de me faire part de vos retours concernant ce diagramme." & _ vbNewLine & vbNewLine & "Cordialement," & vbNewLine & "Bruce" .Item.To = "pdg@entreprise.fr" .Item.Subject = "Rapport diagramme" .Item.Send End With End Sub
brucealmighty
Messages postés33Date d'inscriptionlundi 28 mai 2012StatutMembreDernière intervention14 août 2018 20 oct. 2016 à 03:22
Bonjour,
Merci pour votre réponse.
J'ai finalement trouvé la solution à mon problème.
Pour ceux qui se retrouveraient dans la même situation, il faut premièrement écrire le contenu en HTML :
MyMessage.HTMLBody = EmailBody
Ensuite il faut télécharger sur internet le module "Paste Picture" créé par Stephen Bullen en 1998 :
http://www.oaltd.co.uk/Excel/Default.htm Ce module permet de sauvegarder des ranges en image avec la fonction PastePicture. Une fois l'image enregistrée dans le dossier de votre choix, vous pouvez l'insérer dans le code HTML en tant qu'image (fonction image src).