How to group and sort emails by month in Outlook?
Emails are sorted by received date in the Inbox of Outlook by default. However, there is no command to sort or group all emails by the received month. Here I will introduce a way to group and sort all emails by month in Outlook.
Group or sort emails by month in Outlook by using VBA code
Group or sort emails by month in Outlook by using VBA code
This method will guide you to create a new column named as Month, next apply a VBA macro to extract received month into the new column, and then you can sort or group all emails by the Month column in Outlook.
1. Open a mail folder where you will sort or group emails by month, and click the View Settings button on the View tab in Outlook 2010 and later version.
Note: In Outlook 2007, you can click the View > Current View > Customize current view.
2. In the coming Advanced View Settings/Customize View dialog box, click the Columns button (or Fields button).
3. In the Show Column/Fields dialog box, click the New Column button (or New Field button) to open New Column/Field dialog box, type Month in the Name box, keep Text selected in both Type box and Format box, and then click the OK button. See screenshot below:
4. Now you get back to the Show Columns/Fields dialog box, click to select the Month item in the Show these columns (or Fields) in this order box, and move it below the Received by clicking the Move Up button, and at last click the OK button.
5. Click the OK button to close the Advanced View Settings/Customize View dialog box.
6. Select all emails in the opening folder with selecting any email and then pressing the Ctrl + A keys simultaneously.
Note: If the Reading Pane is turning on, please close it with clicking the View > Reading Pane > Off.
7. Open the Microsoft Visual Basic for Applications window with pressing the Alt + F11 keys in a meanwhile, and then click the Insert > Module.
8. Paste the following VBA macro into the module:
VBA: Sort or group emails by month
Sub ListSelectionMonth()
Dim aObj As Object
Dim oProp As Outlook.UserProperty
Dim sMonth
On Error Resume Next
For Each aObj In Application.ActiveExplorer.Selection
Set oMail = aObj
sMonth = Month(oMail.ReceivedTime)
Set oProp = oMail.UserProperties.Add("Month", olText, True)
oProp.Value = sMonth
oMail.Save
Err.Clear
Next
End Sub
9. Press the F5 key to run this VBA macro.
10. Now each email’s received month is extracted into the following Month column. To sort all emails by month in this opening folder, just click the column header of Month. See screenshot:
Note: To group all emails by month in this opening folder, right click the column header of Month, and then select the Group By This Field from the right-clicking menu. See screenshot:
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.