big*_*yan 2 email vba outlook-vba
我想知道是否有办法按日期对电子邮件进行排序,然后打开找到的最新电子邮件.
我正在尝试搜索Body内部具有唯一标记的电子邮件.为了避免重复的电子邮件具有相同的标签,我必须按日期对这些电子邮件进行排序,并打开最新的电子邮件,以便我可以回复它.
您需要在ReceivedTime属性上对电子邮件进行排序,该属性返回一个日期,指示收到项目的日期和时间.
Sub SortByDate()
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.Folder
Dim myItem As Outlook.MailItem
Dim myItems As Outlook.Items
Set myNameSpace = Application.GetNamespace("MAPI")
Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myItems = myFolder.Items
myItems.Sort "[ReceivedTime]"
For Each myItem In myItems
MsgBox myItem.Subject & " ---- " & myItem.ReceivedTime
Next myItem
End Sub
Run Code Online (Sandbox Code Playgroud)