Bonjour à tous,
Je désire importer les mails Outlook dans une table Access par rapport à un filtre des adresses mails de clients contenus dans une table "clients", il faut donc créer une requête mais je ne sais pas ou l'inclure dans le code joint.
D'autre part je voudrais qu'au lieu que soit présenté le treeview des dossiers Outlook ne soient visibles que les comptes courriers et que la fonction recherche automatiquement dans les sous-dossiers tous les mails en appliquant le filtre par mails clients.
Merci d'avance pour vos suggestions
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73 Public Function ImportMailsOutlook() On Error Resume Next Dim strAttachment As String Dim strSQL As String Dim rsMail As DAO.Recordset Dim tdf As DAO.TableDef Dim Ol_App As New Outlook.Application Dim Ol_MAPI As Outlook.Namespace Dim Ol_Folder As Outlook.MAPIFolder Dim Ol_Items As Outlook.MailItem Dim Ol_Attach As Outlook.Attachment Set tdf = CurrentDb.TableDefs("TblMails") Set rsMail = CurrentDb.OpenRecordset("TblMails") Set Ol_MAPI = Ol_App.GetNamespace("MAPI") Set Ol_Folder = Ol_MAPI.PickFolder For Each Ol_Items In Ol_Folder.Items For Each Ol_Attach In Ol_Items.Attachments strAttachment = strAttachment & Ol_Attach.DisplayName & vbCrLf Next Ol_Attach With rsMail .AddNew .Fields("BCC") = Ol_Items.BCC .Fields("Categories") = Ol_Items.Categories .Fields("CC") = Ol_Items.CC .Fields("ConversationTopic") = Ol_Items.ConversationTopic .Fields("CreationTime") = Ol_Items.CreationTime .Fields("HTMLBody") = Ol_Items.HTMLBody .Fields("LastModificationTime") = Ol_Items.LastModificationTime .Fields("ReceivedByName") = Ol_Items.ReceivedByName .Fields("ReceivedOnBehalfOfName") = Ol_Items.ReceivedOnBehalfOfName .Fields("ReceivedTime") = Ol_Items.ReceivedTime .Fields("SenderName") = Ol_Items.SenderName .Fields("Sent") = Ol_Items.Sent .Fields("SentOn") = Ol_Items.SentOn .Fields("SenderAddress") = Ol_Items.Reply.Recipients.Item(1).Address .Fields("Size") = Ol_Items.Size .Fields("Subject") = Ol_Items.Subject .Fields("TO") = Ol_Items.TO .Fields("UnRead") = Ol_Items.UnRead .Fields("Attachments") = strAttachment .Update End With strAttachment = "" Next Ol_Items rsMail.Close MsgBox "Les données ont été importées" Set rsMail = Nothing Set tdf = Nothing Set Ol_Attach = Nothing Set Ol_Items = Nothing Set Ol_Folder = Nothing Set Ol_MAPI = Nothing Set Ol_App = Nothing End Function
Partager