is it possible to create a dynamic rule in outlook?

  • Thread starter Christopher J. Amatulli
  • Start date

Christopher J. Amatulli

i was curious if its possible to create a outlook rule that for example can
All e-mails with date < now()-90, move to folder archive

if its not possible to create a rule like that, is their a interface
anywhere with that can update/modify outlook rules?

Sue Mosher [MVP-Outlook]

A rule, by definition, runs when a user receives or sends mail. I see no connection between what you want to do and sending and receiving mail. Why not just write a VBA macro to move items? Or use the built-in archiving feature?

Sue Mosher [MVP-Outlook]

The archive process is not programmable. Note that Microsoft does not support .pst files on network shares and warns that slowness and data corruption may be the result if you use them. A real server-based archiving system would be a better solution.

Sue Mosher, Outlook MVP
Author of Microsoft Outlook 2007 Programming:
Jumpstart for Power Users and Administrators

Christopher J. Amatulli said:
good point on the rules, never thought of that... i was more looking at the
option, but with your statement, your right in that its not condusive for
what i'm looking to do.

basically i'm looking to write a PST archiving tool which goes based on the
users mailbox size or the age of an e-mail, and when the item meets tose
requirements, it will move them to the archive file which is stored on the
persons network share, and outlook opens the file. once a file reaches a
specific size it creates a new one with the name of the start date.

have i said a mouthfull :)...

so basically i'm looking for a way to trigger outlook to process the
migration... is their a hook into the archive process that i can utilize? or
maybe a form thats used for the archive process i can modify?


Similar to this post, is there a way of creating a rule that creates folders
based on the subject line?

EG. An email arrives with a number attached: TT30944, the rule creates the
30944 folder and moves all mail with that number in the subject to that

Anyone here know if this is possibe?


Sue Mosher [MVP-Outlook]

Yes, that's certainly possible. It would involve a) parsing the subject property to locate the number, b) checking for the existence of the folder, c) creating the folder using the MAPIFolder.Folders.Add method, then moving the item with the Move method.

There are several examples of such a process among the code samples at


Thanks Sue,

Are there any particular code examples you can cite? I am not a programmer,
save some bash shell scripting in Linux. As long as I have the basic parts
of code in some order, I can usually pull things apart and work with them.


Sue Mosher [MVP-Outlook]

All the relevant methods are documented in Help, usually with code samples.

a) Parsing -- Basic functions like Instr(), Mid(), etc.

b) Checking for a folder -- MAPIFolder.Folders.Item("name of folder") returns Nothing if the folder doesn't exist

c) MAPIFolder.Folders.Add + MailItem.Move

Sue Mosher, Outlook MVP
Author of Microsoft Outlook 2007 Programming:
Jumpstart for Power Users and Administrators

Tamas Simon

Hello Sue!
I have the same problem as Colin.
I would like to solve the issue with a macro, which:

1. checks the subject of the actual email (done)
2. creates a folder for that number (done)
3. creates a rule to send items to that folder

I searched through the web, and could not find any solution for the 3.
point. Is it possible to create a rule from a macro?

I have Outlook 2003.
Thanks in advance for your answer!
Jul 31, 2015
Reaction score

I was wandering if it is possible to program Outlook filters based on a sql query, or something alike.
I need to sort/redirect emails based on their subject. The keywords are reference numbers (so they are not fix), and each connects to an email to forward to.

Any ideas how I can automatize this process somehow?


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question