After importing multiple old emails into Outlook and these emails are in “unread” status, you must want to batch mark them as read. Now, in this article, we will show 2 quick methods to you.
At times, you may need to batch mark multiple emails as read. For instance, you have an old PST file, which contains a plenty of old emails. Then, you import the emails into your own Outlook PST file. However, after importing, these emails are shown as “Unread” by default. At this time, you’ll want to batch mark these mails, older than a specific date, as read. Here we will look at this requirement to share 2 handy and efficient approaches.
Method 1: Batch Mark Found Emails as Read Manually
- For a start, open a mail folder.
- Then, click into the search box.
- Next, in “Search” ribbon, click “All Mail Items” button in “Scope” group.
- After that, input the criteria “sent: <=2018/5/21” in the search box. Change “2018/5/12” to your desired date.

- When searching completes, select all the found mail items via “Ctrl + A”.
- Finally, right click and choose “Mark ad Read” option.
Method 2: Batch Mark Emails Older Than Specific Date as Read with VBA
- To begin with, launch VBA editor in Outlook according to “How to Run VBA Code in Your Outlook“.
- Then, copy the following code into a module.
Dim dDate As Date
Sub MarkEmailsOlderThanSpecificDateRead()
Dim objStore As Outlook.Store
Dim objOutlookFile As Outlook.Folder
Dim objFolder As Outlook.Folder
dDate = InputBox("Enter the specific date:", , "2018/5/11")
For Each objStore In Outlook.Application.Session.Stores
Set objOutlookFile = objStore.GetRootFolder
For Each objFolder In objOutlookFile.Folders
If objFolder.DefaultItemType = olMailItem Then
Call ProcessFolders(objFolder)
End If
Next
Next
End Sub
Sub ProcessFolders(ByVal objCurFolder As Outlook.Folder)
Dim objItem As Object
Dim objMail As Outlook.MailItem
Dim objSubfolder As Outlook.Folder
For Each objItem In objCurFolder.Items
If TypeOf objItem Is MailItem Then
Set objMail = objItem
If objMail.SentOn <= dDate Then
If objMail.UnRead = True Then
objMail.UnRead = False
objMail.Save
End If
End If
End If
Next
If objCurFolder.Folders.Count > 0 Then
For Each objSubfolder In objCurFolder.Folders
Call ProcessFolders(objSubfolder)
Next
End If
End Sub
- Afterwards, press “F5” key to run this macro right now.
- Later, in the small popup dialog box, enter the specific date and hit “OK”.
- Eventually, all the emails older than the specific date will be marked as read.
Restore Compromised Outlook File
Outlook PST files may be damaged after Outlook crashes unexpectedly now and then. If you have an updated backup, you can just recover Outlook data with your backup. Otherwise, you have no choice but to seek a specialized expert or utility, such as DataNumen Outlook Repair to repair Outlook file.
Author Introduction:
Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including mdf fix and outlook repair software products. For more information visit www.datanumen.com



