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
Partager