我正在使用此代码将某些Outlook邮件字段下载到访问中。这工作得很好,但代码继续下载重复的邮件。有没有办法检查现有记录并下载不在表格中的记录?你的回答将帮助很多在我的项目 将唯一数据下载到ms访问表中
Private Sub getml()
Dim rst As DAO.Recordset
Dim OlApp As Outlook.Application
Dim inbox As Outlook.MAPIFolder
Dim inboxItems As Outlook.Items
Dim Mailobject As Object
Dim db As DAO.Database
Dim dealer As Integer
Set db = CurrentDb
Set OlApp = CreateObject("Outlook.Application")
Set inbox = OlApp.GetNamespace("Mapi").GetDefaultFolder(olFolderInbox)
Set rst= CurrentDb.OpenRecordset("mls")
Set inboxItems = inbox.Items
For Each Mailobject In inboxItems
With rst
.AddNew
!task= Mailobject.UserProperties.Find("taskID")
!tsktml= Mailobject.UserProperties.Find("timeline")
.Update
Mailobject.UnRead = False
End With
End If
Next
Set OlApp = Nothing
Set inbox = Nothing
Set inboxItems = Nothing
Set Mailobject = Nothi
End Sub
每个项目都会有一个'ConversationID'这是唯一的该项目 - 它看起来像** ** 2002F3A5F78D45EBA44C273A54AFB802。这个ID只会改变,如果你将项目移动到另一个文件夹 - 我有代码的地方,将跟踪ID的变化,但如果该项目不移动它使一个有用的唯一标识符。 –