Récupéré automitiquement une pièce jointe d'un e-mail sous outlook

Soyez le premier à donner votre avis sur cette source.

Vue 10 431 fois - Téléchargée 637 fois

Description

Ce code permet de récupérer les fichiers attachés dans de nouveaux mails.
Ici on récupère les pièces jointes des message dont l'objet est "Les fichiers zip" et on les sauvegarde dans un répertoire.

Source / Exemple :


Private Sub Application_NewMail()

'Set myOlApp = CreateObject("Outlook.Application") ' mettez cela si vous l'utiliser directement sur VB
Set myOlApp = CetteSessionOutlook ' mettez cela si vous l'utiliser directement sur Outlook
Set myNamespace = myOlApp.GetNamespace("MAPI")
Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox)

nb_messages = myFolder.Items.Count
For i_mess = 1 To nb_messages
    estLu = myFolder.Items(i_mess).UnRead

    If estLu = True Then
        Set myItem = myFolder.Items(i_mess)
        myItem.Display

        Set myItem2 = Application.ActiveInspector.CurrentItem

        If Left(myItem2, 16) = "Les fichiers zip" Then
            Set myAttachments = myItem2.Attachments
            nb_fic = myAttachments.Count
            If nb_fic <> 0 Then
                For i = 1 To nb_fic
                mois = Int(Right(Left(myAttachments.Item(i).DisplayName, 6), 2))
                    myAttachments.Item(i).SaveAsFile "c:\sauv_mail" & _
                    myAttachments.Item(i).DisplayName
                Next i
            End If
        End If
    End If
Next i_mess
End Sub

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
9 juillet 2009

bonjour,

remplace 1 par -1 sur For i_mess = -1 To nb_messages
Messages postés
4
Date d'inscription
vendredi 14 mars 2003
Statut
Membre
Dernière intervention
24 décembre 2004

Bonjour,
J'ai vu que tu as posté des messages à propos de outlook, donc j'ai pensé que tu pourrais m'aider,
Je t'expose mon pb, je veux stocker les pièces jointes des nouveaux mails ds un répertoire sur mon disque, et pour cela j'utilise au début le code ci-dessous, mais le pb c que myFolder.Items.Count crenvoie toujours 0 même si je reçois de nouveaux messages . D'avance merci pour ton aide,
Set myOlApp = New Outlook.Application
Set myNamespace = myOlApp.GetNamespace("MAPI")
Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox)

nb_messages = myFolder.Items.Count
For i_mess = 1 To nb_messages
.......
Messages postés
10
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
23 juillet 2004

trop bon...
Messages postés
1
Date d'inscription
mardi 22 juin 2004
Statut
Membre
Dernière intervention
22 juin 2004

C idem chez moi. Ce code me serait vraiement utile, d'ailleurs c'est en je cherchant cette action que j'ai découvert ce site. Mais ca ne fonctionne pas non plus ici.

Si certain ont des infos sur ce code,

Merci à vous !!
Messages postés
6
Date d'inscription
jeudi 19 décembre 2002
Statut
Membre
Dernière intervention
30 juin 2003

(olFolderInbox) represente quel folder.

le but de ton code m'interresse mais cela ne fonctionne pas chez moi


as tu un exemple complet


merci d'avance
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.