根据日期和时间导入电子邮件数据



我正在尝试从给定指定日期和时间的Outlook收件箱导入数据。

我的问题是宏多次从它看到的第一封电子邮件中提取数据。

它对后续电子邮件做得很好。如何仅从每封电子邮件中提取一次数据?

代码基本上是我在网上找到的模板。

我尝试让循环检查重复项并在发现重复项时清除内容,但我遇到了类型不匹配错误。

Dim OUTAPPLICATION As Outlook.Application
Dim OUTNAMESPACE As Namespace
Dim Folder As MAPIFolder
Dim OutlookMail As Variant
Dim i As Integer
Dim Time As Date
Set OUTAPPLICATION = New Outlook.Application
Set OUTNAMESPACE = OUTAPPLICATION.GetNamespace("MAPI")
Set Folder = OUTNAMESPACE.GetDefaultFolder(olFolderInbox)
i = 1
For Each OutlookMail In Folder.Items
If OutlookMail.ReceivedTime >= range("Date").Value Then
range("Footprints").Offset(i, 0).Value = OutlookMail.Subject
range("Type").Offset(i, 0).Value = OutlookMail.SenderName
range("ETA").Offset(i, 0).Value = OutlookMail.ReceivedTime
range("SH").Offset(i, 0).Value = OutlookMail.Body
range("Status").Offset(i, 0).Value = OutlookMail.CC

i = i + 1

End If
Next OutlookMail

该程序需要很长时间才能运行。有没有办法让它运行得更快?

在结束代码之前添加此代码

Set Folder = Nothing
Set OUTNAMESPACE = Nothing
Set  OUTAPPLICATION= Nothing

最新更新