Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in
x
or
x
x
Register
x

or

How to move email message to specified folder after reading in Outlook?

Moving email message to a specified folder after reading is a best way to keep the Inbox folder clean in Outlook. For many Outlook users, they tend to create a rule for these read emails moving. Actually, Outlook does not support this rule wizard process. In this article, we will show you how to move email messages to specified folder after reading with VBA code in Outlook.

Move email message to specified folder after reading in Outlook

Kutools for Outlook: 100+ New Advanced Tools for Outlook.
Office Tab: Enable Tabbed Editing and Browsing in Office, Just Like Chrome, Firefox, IE 8/9/10.
Classic Menu: Bring Old Menus and Toolbars Back to Office 2007, 2010, 2013, 2016 and 2019.

arrow blue right bubbleMove email message to specified folder after reading in Outlook

You can move email messages to a specified folder after reading with running VBA code in Outlook.

1. Firstly, you need to create a new folder name “Reviewed” under the Inbox folder.

2. Open the Inbox folder, then please press the Alt + F11 keys to open the Microsoft Visual Basic for Applications window.

3. Then double click to expand Project1 > Microsoft Outlook Objects > ThisOutlookSession to open the VbaProject.OTM editor.

4. Then copy and paste the below VBA code to the VbaProject.OTM editor as shown in above screenshot.

VBA code: move messages after read

Sub MoveInbox2Reviewed()
On Error Resume Next
Set oOutlook = CreateObject("Outlook.Application")
Set oNamespace = oOutlook.GetNamespace("MAPI")
Set oFolderSrc = oNamespace.GetDefaultFolder(olFolderInbox)
Set oFolderDst = oFolderSrc.Folders("Reviewed")
Set oFilteredItems = oFolderSrc.Items.Restrict("[UnRead] = False")
For Each oMessage In oFilteredItems
    oMessage.Move oFolderDst
Next
End Sub 

5. Then click the Save button to save the VBA code and then close the Microsoft Visual Basic for Applications window.

6. Right click the Quick Access Toolbar, and select Customize Quick Access Toolbar from the right-clicking menu. See screenshot:

7. In the Outlook Options dialog box, you need to:

1). Select Macros in the Choose commands from drop-down list;

2). Select Project1. ThisOutlookSession in the box under the Choose commands from drop-down list;

3). Click the Add button;

4). Click the OK button.

8. Then you can see the Macro button showing in the Quick Access Toolbar. Make sure that you are locating in the inbox folder you want to move all the read messages from, then click the Macro button to run the VBA code inside the Inbox.

Notes:

1. This VBA code can be applied in Outlook 2007, 2010 and 2013; But, in Outlook 2007, you can directly click the Run button to run the code.

2. If there are multiple email accounts existing in your Outlook, the VBA code can only be applied in the account which data file is set as default. You can check the default data file by clicking File > Info > Account Settings > Account Settings to open the Account Settings dialog box. Then go to the Data File tab, you will see the default data file is marked by before.

3. If you want to change the default data file to another email account, please select and highlight the account you want to set as default, then click the Set as Default in the Account Settings dialog box.

4. When running the VBA code at the first time and finding out the read messages are not moved all at once, please keep clicking the Macro button until all read messages in the Inbox are moved out.

 

Recommended Productivity Tools

shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121

Kutools for Outlook - More than 100 Advanced Functions for Outlook, Improve 70% Efficiency For you

  • Complicated and repeated operations can be done a one-time processing in seconds.
  • Forward multiple emails individually with one-click, and auto forward by rules.
  • Auto CC/BCC every sending email and easy for customizing rules, and auto reply without requiring exchange server.
  • Powerful junk emails filter, remove duplicate emails, reply with attachment, bunch of one-click operations, and so on...
  • 60-day unlimited free trial. 60-day money back guarantee. 2 years free upgrade and support. Buy once, use forever.

 

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    fabio · 9 months ago
    Buongiorno


    Esiste la versione per Outlook 365 in italiano (non so se cambia qualcosa). Grazie
  • To post as a guest, your comment is unpublished.
    Jake · 1 years ago
    What line do I add when I only want this rule to apply to emails with a subject line including a word or text?
  • To post as a guest, your comment is unpublished.
    Keldon · 2 years ago
    Where's all the Dim's?????????????????????/ o.0
  • To post as a guest, your comment is unpublished.
    Karlton Hoskins · 2 years ago
    I tried the above method but nothing happens. I verified the folder name was accurate and in the right location. I also set my main account as default, where i will be moving read messages from. I click on the Macro button...nothing. Help. Did I miss something.
    • To post as a guest, your comment is unpublished.
      . · 11 months ago
      You have to activate the references in VBA
  • To post as a guest, your comment is unpublished.
    Liz · 2 years ago
    Can this VBA code be altered to move messages from an Inbox subfolder to a "Reviewed" folder in said subfolder?