IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Outlook Discussion :

Importer et renommer les pièces jointes outllook


Sujet :

VBA Outlook

  1. #1
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de stock
    Inscrit en
    Février 2016
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Gestionnaire de stock
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2016
    Messages : 34
    Points : 16
    Points
    16
    Par défaut Importer et renommer les pièces jointes outllook
    Bonsoir

    Besoin d'aide, je cherche un programme en VBA qui récupère les pièces jointes excel dans des email Outlook (boite de réception ou dossier archivé) ensuite les renommé selon les expéditeur et l'enregistre automatiquement dans un dossier spécifique.

    j'ai trouvé le programme ci-dessous qui enregistre les Pièce-joints dans un dossier, je dois maintenant intégrer un code afin qu'il renomme les pièces joints selon l’expéditeur ;

    Sub SaveAttachment()

    'Declaration
    Dim myItems, myItem, myAttachments, myAttachment As Object
    Dim myOrt As String
    Dim myOlApp As New Outlook.Application
    Dim myOlExp As Outlook.Explorer
    Dim myOlSel As Outlook.Selection
    Dim i As Integer

    'Boîte de dialogue simple pour le chemin de sauvegarde
    myOrt = InputBox("Destination", "Save Attachments", "C:\CdeDELL\Facture\")

    On Error Resume Next

    'Actions sur les objets sélectionnés
    Set myOlExp = myOlApp.ActiveExplorer
    Set myOlSel = myOlExp.Selection

    'boucle
    For Each myItem In myOlSel
    Set myAttachments = myItem.Attachments
    If myAttachments.Count > 0 Then
    'Ajoute une remarque dans le corps du message
    myItem.Body = myItem.Body & vbCrLf & _
    "pièce jointe enlevée:" & vbCrLf

    'for all attachments do...
    For i = 1 To myAttachments.Count

    'save them to destination
    myAttachments(i).SaveAsFile myOrt & _
    myAttachments(i).DisplayName
    myItem.Body = myItem.Body & _
    "File: " & myOrt & _
    myAttachments(i).DisplayName & vbCrLf

    Next i

    'Enlève les pièces jointes du message
    While myAttachments.Count > 0

    myAttachments(1).Delete

    Wend

    'Sauvegarde le message sans ses pièces jointes
    myItem.Save
    End If

    Next

    Set myItems = Nothing
    Set myItem = Nothing
    Set myAttachments = Nothing
    Set myAttachment = Nothing
    Set myOlApp = Nothing
    Set myOlExp = Nothing
    Set myOlSel = Nothing

    End Sub


    merci d'avance
    aucun avatar redalinho
    Nouveau venu
    Nouveau venu

    Messages: 1
    Inscription: 03 Fév 2016, 19:30
    Version Excel: 2007

  2. #2
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Bonsoir,
    tu peux te baser sur ce code plus complet :

    http://www.developpez.net/forums/blo...yperlien-mail/


    la fonction Get_sender_SMTP te donnera l'adresse Email de l'expéditeur

    le nom de la pj est décidé là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     pj.SaveAsFile repertoire & PathNomExport
    il faut penser aux doublons

  3. #3
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de stock
    Inscrit en
    Février 2016
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Gestionnaire de stock
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2016
    Messages : 34
    Points : 16
    Points
    16
    Par défaut
    Bonjour Oliv

    merci infiniment pour ton retour, j'ai copié les codes, ensuite j'ai essayé de les modifié selon mon besoin, mais je me suis perdu vu que je suis un débutant <(^^)
    serait-il possible de me transmettre le programme modifié a copié, dans la mesure du possible bien sur

    cordialement

  4. #4
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    SAlut,

    Il manque beaucoup d'informations ! comment la macro sera déclenchée, comment veux tu renommer tes PJ , où les mettre etc ...

  5. #5
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de stock
    Inscrit en
    Février 2016
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Gestionnaire de stock
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2016
    Messages : 34
    Points : 16
    Points
    16
    Par défaut
    Salut Oliv

    je veux exporté les pièces joints de mes Emails dans un dossiers Windows "D:/Mail" ensuite renommer les pièces jointes selon l'adresse des expéditeur (voir la capture en pj)Nom : Macro exemple.JPG
Affichages : 427
Taille : 67,1 Ko

    PS: avec la 1er Macro que je vous ai communiqué j'ai réussi seulement a exporté les pièces jointes dans le dossier "D:/Mail"

    merci Oliv pour tes réponses et tes efforts

  6. #6
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    SAlut,

    pour récupérer le nom de l'expéditeur c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    msgbox myItem.SenderName
    Si tu renommes uniquement avec le nom de l'expéditeur, tu n'auras au final qu'une PJ par expéditeur, la dernière exportée.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de stock
    Inscrit en
    Février 2016
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Gestionnaire de stock
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2016
    Messages : 34
    Points : 16
    Points
    16
    Par défaut
    Salut

    merci mon ami pour tes réponses,

    bonne continuation

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/11/2015, 15h10
  2. [Indy] Comment récupérer les pièces jointes d'un mail ?
    Par dj_lil dans le forum Web & réseau
    Réponses: 6
    Dernier message: 01/04/2011, 19h07
  3. Contrôle sur les piéces jointes
    Par prince_antonio dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 20/04/2007, 21h53
  4. récupérer les pièces jointes d'un mail [Outlook Express]
    Par chrisledeveloppeur2 dans le forum Delphi
    Réponses: 2
    Dernier message: 10/01/2007, 08h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo