Move incoming Outlook emails to folder containing previous conversation

I file email conversations in various folders. But every new email in that conversation goes to inbox, so I have to manually move it to the folder that contains the rest of the conversation. Is there a way for Outlook to do this automatically with all new emails?

What I want: Outlook will do the following automatically as long as it's running:

  • For all unread emails in inbox...
  • ...if email is not the first in the conversation, search for folders where that conversation is stored.
  • If found, move the new unread email to the first* folder it finds (except for Inbox, Trash, or Sent).
  • Optionally: If there is more than one folder containing messages in the same conversation, then do nothing.

**If there is more than one folder containing messages in the same conversation, then do nothing*. (This extra rule is not necessary if it complicates the solution too much)

Thanks!


There is a "move" ribbon/action in outlook, the last item of it is "Always move messages in this conversation...". There you can specify, where to move the messages that arrive for a specific conversation. Unfortunatly you will have to do this for every conversation (not for every mail though). So far the fastest solution i could find for this problem.

cheers


You can solve this issue using a VBA macro that generates a list of folders that all of the emails in the conversation currently reside in. Then, the user can pick from this list or a rule can be set to select the folder to move the email to. The selection or rule should trigger another VBA subroutine to move the emails.

I had the same issue and created a macro to just this. The macro is currently working in Outlook 2016.

GitHub: outlook-move-to-thread