Menu

Classement pièce jointe en vba

Messages postés
9
Date d'inscription
jeudi 16 février 2017
Statut
Membre
Dernière intervention
8 juillet 2019
- - Dernière réponse : yg_be
Messages postés
8000
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 juillet 2019
- 9 juil. 2019 à 13:01
Bonjour,
Cela fait un moment que je cherche à classer, une pièce jointe venant d'un mail, dans un dossier sur le disque dur.
Beaucoup de sujet tourne la dessus mais aucun correpond à mon besoin :
Lors de la réception d'un mail d'un expéditeur précis, enregistrer la pièce jointe dans un dossier ( pour l'exemple ce sera "mon\dossier" )
Voici un morceau de code que j'ai essayé de modifier mais sans réussite....
Ce code se trouve dans le vba de outlook dans "thisoutlooksession" pour qu'il puisse être lancé dès la réception du mail.

Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)

'Déclarations

Dim MonMail As Outlook.MailItem
Dim myAttachments As Outlook.Attachments

'Instance des variables

Set MonMail = Application.Session.GetItemFromID(EntryIDCollection)
Set myAttachments = MonMail.Attachments


If MonMail.SenderEmailAddress = "toto@hotmail.fr" Then
myAttachments.SaveAsFile "Mon\chemin"
End If

End Sub

Merci pour votre aide
Afficher la suite 

1 réponse

Messages postés
8000
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 juillet 2019
393
0
Merci
bonjour, suggestion:
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim MonMail As Outlook.MailItem
Dim myAttachments As Outlook.Attachments
Dim unfichier As Attachment
Set MonMail = Application.Session.GetItemFromID(EntryIDCollection)
Set myAttachments = MonMail.Attachments
If MonMail.SenderEmailAddress = "toto@hotmail.fr" Then
    For Each unfichier In myAttachments
        unfichier.SaveAsFile "C:\data\temp\" + unfichier.DisplayName
    Next unfichier
End If
End Sub
Commenter la réponse de yg_be