Bonjour tous le monde.
Voila mon problème: je veux récupérer les informations dans des mails de mon compte Outlook.
J'utilise la fonction suivante qui marche très bien sur mon mail perso (mail SMTP), mais ne fonctionne pas pour mon mail pro (mail EX).
Je voudrai récupérer les mêmes informations qu'en SMTP.
Pour information mon Outlook est toujours ouvert derrière, je n'ai pas de code à rentrer appart celui de la session windows, les 3 premières demandes d'information fonctionnent dans les deux cas.
Je peux ouvrir une fenêtre avec le mail consulté dedans, le déplacer dans un autre dossier également dans les deux cas.
Merci pour votre aide

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
44
Function ImporterMailWO()
    Dim appOl As New Outlook.Application
    Dim ns As Namespace
    Dim inboxWOimporte As MAPIFolder
    Dim inboxWOtraite As MAPIFolder
    Dim mail As MailItem
    
    Set appOl = CreateObject("Outlook.Application")
    Set ns = appOl.GetNamespace("MAPI")
    Set inboxWOimporte = ns.GetDefaultFolder(olFolderInbox).Folders("WO importé")
    Set inboxWOtraite = ns.GetDefaultFolder(olFolderInbox).Folders("WO traité")
     
    For Each mail In inboxWOimporte.Items
        
        'si Outlook passe par un exchange
        If mail.SenderEmailType = "EX" Then
            
        MsgBox (mail)
        MsgBox (mail.ReceivedTime)
        MsgBox (mail.Subject)
        MsgBox (mail.Sender.GetExchangeUser.PrimarySmtpAddress)    ->  Erreur d'exécution 287 - Erreur définie par l'application ou par l'objet
        MsgBox (mail.SenderEmailAddress)                                         ->  Erreur d'exécution 287 - Erreur définie par l'application ou par l'objet
        MsgBox (mail.CC)                                                                  ->  Erreur d'exécution 287 - Erreur définie par l'application ou par l'objet
        MsgBox (mail.Body)                                                               ->  Erreur d'exécution 287 - Erreur définie par l'application ou par l'objet
        
        
        'si Outlook est de type SMTP
        Else
        MsgBox (mail)
        MsgBox (mail.ReceivedTime)
        MsgBox (mail.Subject)
        MsgBox (mail.SenderEmailAddress)
        MsgBox (mail.CC)
        MsgBox (mail.Body)
        MsgBox (mail.SenderEmailType)
        
        End If
        
        'déplacer le mail dans le fichier inboxWOtraite
        mail.Move inboxWOtraite
           
    Next mail

End Function