Classement pièce jointe en vba

Berorn Messages postés 31 Statut Membre -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
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

1 réponse

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    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
    0