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

Macros et VBA Excel Discussion :

Extraire donnees mails Outlook vers Excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur aéronautique
    Inscrit en
    Mars 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur aéronautique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Extraire donnees mails Outlook vers Excel
    Bonjour,

    j'ai developpé une premiere application en VBA pour, à partir d'Excel, envoyer un mail à une personne en particulier avec des informations qu'un autre utilisateur rentre manuellement, le sujet du mail (Topic) est composé des variables rentrées par l'utilisateur. La personne qui reçoit le mail, grâce à une regle Outlook, les recevra dans un meme dossier Outlook pre-defini, nommé "Tracker" (Chemin: "Boite de reception" => "Traker").

    Le but de la nouvelle macro Excel (et non sur Outlook!) à creer: lorsque la personne qui reçoit les mails clique sur un bouton par exemple, la macro va dans le dossier "Tracker" et passe en revu les mails un par un, et récupère les données cibles (topic du mail, cf. ci-apres), et les met dans une Feuille Excel.

    Le sujet du mail pre-formaté reçu (grace à la premiere macro que j'ai crée, est du type "Tracking modifications - SA / RC / GLO - 45895 / To Pre - stress ") et grace à ce formattage type, cela me permettrait de récuperer toujours les mêmes données (ici en rouge) ; ces données etant variables).

    Comment faire pour recuperer et stocker dans Excel les sujets de chaque mail contenu dans le meme dossier, et une fois recupérés dans une feuille Excel, comment les mettre dans un autre dossier Outlook (genre "Tracker-Archives") ?


    Merci par avance,

    PS : j'ai déjà trouvé des codes pour essayer de faire cela, mais j'ai l'erreur suivante qui apparait: "Compile error:
    User-defined type not defined" pour la ligne 11 du code ci-dessous



    Voici le code sur lequel je compte me baser pour extraire des infos: (après je me debrouille pour le traitement des données, je veux juste savoir comment les extraire au final sans qu'il y ait l'erreur précédente)


    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
    Sub InfoSelection()
     
    'Déclaration des Objets et variables
        Dim MonApply As Outlook.Application
        Dim MonMail As Outlook.mailitem
        Dim MonNSpace As Outlook.Namespace
        Dim FldDossier As Outlook.Folder
        Dim strInfos As String
     
        'Instance des Objets
        Set MonApply = Outlook.Application    'Application Outlook
        Set MonNSpace = MonApply.GetNamespace("MAPI")    'Banque MAPI
        Set FldDossier = MonNSpace.GetDefaultFolder(olFolderInbox)    'Dossier boîte de réception
        'Initialisation de la chaîne de caractères
        strInfos = ""
        'Boucle afin de parcourir l'ensemble des E-mails présents dans le dossier Boîte de réception
        For i = 1 To FldDossier.Items.Count
            'instancie le mail suivant la valeur de la boucle
            Set MonMail = FldDossier.Items(i)
            'Test sur le sujet si égale à Invitation
            If MonMail.Subject = "Tracking modifications - SA / RC / GLO - 45895 / To Pre - stress" Then
                'Récupère les diverses informations du Mail ayant pour sujet "Tracking modifications - SA / RC / GLO - 45895 / To Pre - stress"
                With MonMail
                    strInfos = "Expéditeur : " & .SenderEmailAddress
                    strInfos = strInfos & vbCr & "Destinataire(s) : " & .To
                    strInfos = strInfos & vbCr & "Date de réception : " & .ReceivedTime
                End With
                'Affichage du résultat
                MsgBox strInfos
            End If
        Next i
     
        'Vide des instances
        Set MonApply = Nothing
        Set MonNSpace = Nothing
        Set FldDossier = Nothing
        Set MonMail = Nothing
     
     
     
    End Sub

  2. #2
    Membre habitué
    Homme Profil pro
    Back Office Marchés
    Inscrit en
    Mars 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Back Office Marchés
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2011
    Messages : 65
    Points : 139
    Points
    139
    Par défaut Si tu es dans Excel
    Bonsoir,

    Au sujet de l'erreur de compil, si tu es dans Excel, as tu activé la bibliothèque Outlook ?

    VBE/Outils/References/Microsoft Outlook 12.0 Object Library si tu es sous 2007 (11.0 si tu es sous 2003) etc.

    Ensuite il faut que tu instancies une session d'Outlook

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim MyOutlook As New Outlook.Application
    (Early binding)

    ou bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim MyOutlook as Outlook.Application
     
    set MyOutlook = CreateObject(Outlook.Application)
    (Late Binding)

    Pour la macro je te laisse bosser.

    Guillaume

  3. #3
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, juste pour info dans la FAQ Excel

  4. #4
    Candidat au Club
    Homme Profil pro
    Ingénieur aéronautique
    Inscrit en
    Mars 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur aéronautique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup ! en effet, je n'avais pas activé la bibliotheque Outlook.

    Merci pour les reponses

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

Discussions similaires

  1. Extraire données mails outlook vers excel
    Par Genco928 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 24/03/2022, 18h00
  2. [Toutes versions] Extraire des mails Outlook vers Excel
    Par secu_res_123 dans le forum VBA Outlook
    Réponses: 10
    Dernier message: 10/09/2015, 12h16
  3. Extraire données mails Outlook vers Excel
    Par Dheimoss dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 28/03/2012, 14h19
  4. [XL-2007] Extraire données mails Outlook vers Excel
    Par wiiirr dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/12/2011, 12h13
  5. [XL-2003] Extraire données mails Outlook vers Excel
    Par sdispro dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 10/12/2011, 00h21

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