Manipulation d'une pièce jointe outlook en VBA
Fermé
SPT1
-
27 mai 2020 à 19:13
yg_be Messages postés 23348 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 novembre 2024 - 11 juin 2020 à 22:32
yg_be Messages postés 23348 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 25 novembre 2024 - 11 juin 2020 à 22:32
A voir également:
- Manipulation d'une pièce jointe outlook en VBA
- 1 pièce jointe - Guide
- Compte outlook gratuit - Guide
- Telecharger one piece - Forum Téléchargement
- Nouveau outlook - Accueil - Mail
- Erreur 1001 outlook - Accueil - Bureautique
2 réponses
yg_be
Messages postés
23348
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 novembre 2024
Ambassadeur
1 554
27 mai 2020 à 19:16
27 mai 2020 à 19:16
bonjour, tu ne nous montres pas ce que tu fais avec la pièce jointe reçue, ni comment tu essaies de la joindre à l'envoi.
Voici le contenu du code
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String) 'Variables Dim arrID() As String Dim i, j As Integer Dim ns_outlook As outlook.NameSpace Dim item_outlook As MailItem Dim itm As outlook.MailItem Dim expéditeur As String Dim objet_email As String Dim outlook As Object Dim outlookMail As Object Dim Mesattachements As outlook.Attachments Dim Piecejointe As outlook.Attachments 'En cas d'erreur On Error Resume Next Set ns_outlook = Application.Session 'Séparer le matricule de l'objet Outlook arrID = Split(EntryIDCollection, ",") For i = 0 To UBound(arrID) Set item_outlook = ns_outlook.GetItemFromID(arrID(i)) If item_outlook.Class = olMail Then Set itm = item_outlook expediteur = itm.SenderName objet_email = itm.Subject Set Mesattachements = itm.Attachments If Mesattachements.Count > 0 And Right(UCase(Mesattachements(1).FileName), 4) = ".PNG" Then 'La pièce jointe est une image PNG If expediteur = "XXXXX" And objet_email = "TEST" Then Set Piecejointe = itm.Attachments(1) Set outlook = CreateObject("Outlook.Application") Set outlookMail = outlook.CreateItem(0) stringbody = "<B><SPAN STYLE='font-family: Segoe UI; font-size:21'>Suivi Quotidien</SPAN></B><br>" stringbody = stringbody & "<SPAN STYLE='font-family: Segoe UI; font-size:12'>Veuillez trouver ci-après le document actualisé.</SPAN><br><br>" stringbody = stringbody & "<SPAN STYLE='font-family: Segoe UI; font-size:12'>Cordialement" & " </SPAN>" 'stringbody = stringbody & "<IMG src""cid: With outlookMail .Display .To = "ZZZZZZZZZ" .Subject = "SUJET DU MESSAGE" .HTMLBody = stringbody & .HTMLBody '.Attachments = piecejointe .Display .Send End With End If End If End If Next Set ns_outlook = Nothing Set item_outlook = Nothing Set itm = Nothing Set Piecejointe = Nothing End Sub
yg_be
Messages postés
23348
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 novembre 2024
1 554
Modifié le 11 juin 2020 à 22:42
Modifié le 11 juin 2020 à 22:42
merci d'utiliser les balises de code quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
as-tu ajouté
où essaies-tu d'insérer la pièce jointe dans le mail envoyé? je pense que cela se fait en utilisant Add, comme expliqué ici: https://docs.microsoft.com/fr-ch/office/vba/api/outlook.attachments.add
il me semble probable qu'il faille sauver le fichier sur disque avant de l'attacher à un autre mail.
as-tu ajouté
option expliciten début de module?
où essaies-tu d'insérer la pièce jointe dans le mail envoyé? je pense que cela se fait en utilisant Add, comme expliqué ici: https://docs.microsoft.com/fr-ch/office/vba/api/outlook.attachments.add
il me semble probable qu'il faille sauver le fichier sur disque avant de l'attacher à un autre mail.