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 :

Macro Outlook export format msg, répétition de la macro [OL-2016]


Sujet :

VBA Outlook

  1. #1
    Membre régulier
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 64
    Points : 75
    Points
    75
    Par défaut Macro Outlook export format msg, répétition de la macro
    Bonjour le fofo,

    Je reviens vers vous pour un problème que j'ai depuis quelques temps mais que j'avais laissé dans un coin en me disant ce n'est pas grave, ce qui est vrai, mais du coup mon développement est incomplet.

    Voici le concept de la macro :

    Sur la boîte de réception, on sélectionne un ou plusieurs mails puis l'exécution de la macro permet d'exporter les mails dans un répertoire Windows (répertoire existant existant ou non). L'avantage c'est que cela libère de la place pour les messageries un peu short en espace disque alloué, et que les mails sont sous format .msg. Il est donc possible de les consulter, faire des recherches, répondre, consulter les PJ tout ça tout ça.

    Cette macro fonctionne nickel (merci Oliv!) mais j'ai un juste un frein, c'est que je suis obligé de quitter Outlook er de le relancer à chaque execution de macro, sinon les mails vont venir se stocker dans le répertoire initialement demandé (pour faire simple, mon inputbox pour demander le nom du rep. n'apparaît pas.)

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
     
    Sub sav_mail_as_msg(Optional objCurrentMessage As Object)
     
        ' Exporter des mails des Apporteurs
     
    On Error Resume Next
     
    If objCurrentMessage Is Nothing Then Set objCurrentMessage = ActiveInspector.CurrentItem
     
            ' Format Date
    Annee = Mid(objCurrentMessage.CreationTime, 7, 4)
    Mois = Mid(objCurrentMessage.CreationTime, 4, 2)
    Jour = Mid(objCurrentMessage.CreationTime, 1, 2)
    Heure = Mid(objCurrentMessage.CreationTime, 12, 5)
     
            ' Créer format nom du Mail exporté
    NomExport = Jour & "-" & Mois & "-" & Annee & "  " & Heure & " - " & "De" & " " & objCurrentMessage.SenderName & " - " & "À" & " " & objCurrentMessage.To & " - " & objCurrentMessage.Subject
     
            ' Création ou non du dossier de destination
        If app = "" Then
            app = InputBox("Nom de l'affaire / apporteur ?")
        End If
     
    ChDir "D:\Users\documents\Messagerie\Apporteurs\" & app & "\"
    If Error Then MkDir "D:\Users\documents\Messagerie\Apporteurs\" & app & "\"
    On Error GoTo 0
     
            ' Copier le dossier
    repertoire = "D:\Users\Documents\Messagerie\" & app & "\"
    PathNomExport = repertoire & Left(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace( _
    NomExport, "\", ""), "/", ""), ":", ""), "*", ""), "?", ""), "<", ""), ">", ""), "|", ""), ".", ""), """", ""), vbTab, ""), Chr(7), ""), 160) & ".msg"
    n = 1
    MemPath = PathNomExport
    While Dir(PathNomExport) <> ""
    MsgBox "L'Email " & vbCr & PathNomExport & vbCr & "existe déjà", vbInformation
    PathNomExport = Left(MemPath, Len(MemPath) - 4) & "(" & n & ")" & ".msg"
    n = n + 1
     
    Wend
            ' Sauvegarde et suppression du mail
    objCurrentMessage.SaveAs PathNomExport, OlSaveAsType.olMSG
    objCurrentMessage.Delete
    Si quelqu'un il a une idée je prends,

    Cimer

    don

  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 : 52
    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
    Bonjour,
    Il manque une partie de ton code , mais si tu mets à la fin ca doit corriger le pb

  3. #3
    Membre régulier
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 64
    Points : 75
    Points
    75
    Par défaut
    Salut Oliv,

    Effectivement je n'ai pas collé la suite qui permet de faire de la multi sélection de mails :

    Code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim MonOutlook As Outlook.Application
    Dim LeMail As Object
    Dim LesMails As Outlook.Selection
     
    Set MonOutlook = Outlook.Application
    Set LesMails = MonOutlook.ActiveExplorer.Selection
     
    For Each LeMail In LesMails
    sav_mail_as_msg LeMail
    Next LeMail
     
    Set LesMails = Nothing
    MsgBox "Pfiouu enfin terminé, et avec succès !!"
    Ce qui fait que si je rajoute app="" à la fin de ma macro, la conséquence est que si je 35 mails à balancer dans le même dossier, l'inputbox reviendra autant de fois, mais sinon je te confirme que cela fonctionne

  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 : 52
    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
    Citation Envoyé par don_pets Voir le message
    Salut Oliv,


    Ce qui fait que si je rajoute app="" à la fin de ma macro, la conséquence est que si je 35 mails à balancer dans le même dossier, l'inputbox reviendra autant de fois, mais sinon je te confirme que cela fonctionne
    NOn si c'est sur la ligne 11

  5. #5
    Membre régulier
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 64
    Points : 75
    Points
    75
    Par défaut
    Yeaaaaaaaaaaaaaaaaaaa,

    ça tourne nickel,

    Merci Oliv !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 46
    Dernier message: 10/12/2020, 10h14
  2. [XL-2010] Macro pour exporter une plage de données d'excel vers outlook
    Par fredouillebb dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/09/2017, 18h16
  3. [OL-2007] Macro d'export agenda outlook excel erreur 1004
    Par jopont dans le forum VBA Outlook
    Réponses: 0
    Dernier message: 17/03/2017, 11h59
  4. Outlook Importation fichier format *.msg
    Par PhilHippos dans le forum Outlook
    Réponses: 0
    Dernier message: 08/06/2012, 20h35
  5. [Outlook] Gérer le format *.msg d'Outlook
    Par calogerogigante dans le forum Documents
    Réponses: 7
    Dernier message: 16/03/2006, 17h18

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