How to mark unread emails older than specific days as read automatically in Outlook?
If there are multiple unread emails in your Inbox folder, normally, you can apply the Mark All as Read feature to mark all unread emails as read emails manually. But, have you ever tried to mark unread emails which are older than specific days as read automatically in Outlook without setting it manually each time?
Mark unread emails older than specific days as read automatically with VBA code
Mark unread emails older than specific days as read automatically with VBA code
To auto mark all unread emails older than specific days as read, the following VBA code can do you a favor:
1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
2. In the Microsoft Visual Basic for Applications window, double click ThisOutlookSession from the Project1(VbaProject.OTM) pane to open the mode, and then copy and paste the below code into the blank module.
VBA code: Auto mark unread emails older than specific days as read:
Private Sub Application_Startup()
Call MarkOldUnreadEmailsAsRead
End Sub
Private Sub MarkOldUnreadEmailsAsRead()
Dim xInboxFld As Outlook.Folder
Dim xAccount As Account
On Error GoTo L1
For Each xAccount In Outlook.Application.Session.Accounts
Set xInboxFld = xAccount.DeliveryStore.GetDefaultFolder(olFolderInbox)
Call Processfolders(xInboxFld)
Next xAccount
L1: Exit Sub
End Sub
Private Sub Processfolders(ByVal InboxFld As Outlook.Folder)
Dim xItems As Outlook.Items
Dim i As Long
Dim xSubFld As Outlook.Folder
On Error Resume Next
Set xItems = InboxFld.Items
For i = 1 To xItems.Count
If DateDiff("d", xItems(i).ReceivedTime, Now) >= 15 Then
If xItems(i).UnRead = True Then
xItems(i).UnRead = False
xItems(i).Save
End If
End If
Next
If InboxFld.Folders.Count > 0 Then
For Each xSubFld In InboxFld.Folders
Call Processfolders(xSubFld)
Next
End If
End Sub
Note: In the above code, you can change the number of days within this script: If DateDiff("d", xItems(i).ReceivedTime, Now) >= 15 Then to your own needed.
3. Then save and close this code window, since then, every time when you launch Outlook, all unread emails which are older than predefined days will be marked as read automatically at once.
Note: This code is only available to the default data account.
Best Office Productivity Tools
Kutools for Outlook - Over 100 Powerful Features to Supercharge Your Outlook
π€ AI Mail Assistant: Instant pro emails with AI magic--one-click to genius replies, perfect tone, multilingual mastery. Transform emailing effortlessly! ...
π§ Email Automation: Out of Office (Available for POP and IMAP) / Schedule Send Emails / Auto CC/BCC by Rules When Sending Email / Auto Forward (Advanced Rules) / Auto Add Greeting / Automatically Split Multi-Recipient Emails into Individual Messages ...
π¨ Email Management: Easily Recall Emails / Block Scam Emails by Subjects and Others / Delete Duplicate Emails / Advanced Search / Consolidate Folders ...
π Attachments Pro: Batch Save / Batch Detach / Batch Compress / Auto Save / Auto Detach / Auto Compress ...
π Interface Magic: πMore Pretty and Cool Emojis / Boost Your Outlook Productivity with Tabbed Views / Minimize Outlook Instead of Closing ...
π One-click Wonders: Reply All with Incoming Attachments / Anti-Phishing Emails / πShow Sender's Time Zone ...
π©πΌβπ€βπ©π» Contacts & Calendar: Batch Add Contacts From Selected Emails / Split a Contact Group to Individual Groups / Remove Birthday Reminders ...
Over 100 Features Await Your Exploration! Click Here to Discover More.