Envoi de mail sans capture d'écran dans le corps du message

Vdlz -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

J'ai écrit un code qui me permet d'envoyer un mail avec le classeur en pièce jointe. Malheureusement je suis débutant en programmation (d'ailleurs désolé si le code est moche ^^) et même si le mail s'envoie à la perfection, dans le corps du message il y a comme contenu une capture d'écran de ma feuille1. Or je voudrais qu'elle n'apparaisse pas. Pourriez-vous me donner un coup de main s'il-vous-plaît? D'avance, merci.



Const Chemin As String = "C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE" 'constante qui contient le chemin d'accès du fichier outlook. A changer en fonction du chemin


On Error Resume Next
Set Appli = GetObject(, "Outlook.Application")

If Appli Is Nothing Then

SessionOutlook = Shell(Chemin, 1)

End If
ActiveWorkbook.EnvelopeVisible = False

With MailEnvelope

.Introduction = "bonjour , voici une nouvelle remontée de situation dangereuse" 'texte à écrire dans le mail
.Item.To = "***@***" 'mettre adresse Michael
.Item.Subject = "remontée sd" 'sujet du mail
.Item.Attachments.Add ActiveWorkbook.Path & "\" & batiment + " " + nom & ".xlsm"
.Item.OriginatorDeliveryReportRequested = True 'demande une confirmation d'envoi
.Item.Send 'envoi du mail

End With


End Sub

A voir également:

1 réponse

cs_Le Pivert Messages postés 8437 Statut Contributeur 729
 
bonjour,

Je présume que la capture d'écran est une shape!

Tu cliques sur l'image, tu verras son nom au dessus du A de la colonne A.

Donc il va falloir la rendre invisible comme ceci:

ActiveSheet.Shapes("Image 2").Visible = False 'adapter nom de la shape


a mettre avant d'envoyer le mail, ensuite pour rétablir a la fin de ta macro:

ActiveSheet.Shapes("Image 2").Visible = True 'adapter nom de la shape


Voilà

0