Solved

run outlook Rule from access 2010 vba code then delete all rules

Posted on 2016-09-19
2
61 Views
Last Modified: 2016-09-19
I have that creates a rule in outlook from access vba code.
Internet code.

It creates the rule then saves it.
Works great.

What I need:
I now need to execute that same rule...then delete the RULE.

I need to RUN THE RULE from the "Sent Items"  folder specifically.


Code for Creating the rule:
Dim colStores As Outlook.Stores
Dim oStore As Outlook.Store
Dim oFolders As Outlook.Folders
Dim oInbox As Outlook.folder
Dim Folder_Name As String
Dim Rname As String

Folder_Name = SELLER_NAME & "_" & "EscalationId_" & price_escNum & "_Created_" & Date
Rname = "Action Required - Pricing Escalation" & " #'" & price_escNum & "'"
'  On Error Resume Next

Set colStores = Outlook.Session.Stores
Set oFolders = colStores.Item("bookprice@xxxxxx.com").GetDefaultFolder(olFolderInbox).Folders.Item("Archive").Folders
oFolders.Add (Folder_Name)
   
Dim colRules As Outlook.Rules
   Dim oRule As Outlook.Rule
   Dim colRuleActions As Outlook.RuleActions
   Dim oRuleAction As Outlook.RuleAction
   Dim oMoveRuleAction As Outlook.MoveOrCopyRuleAction
   Dim oFromCondition As Outlook.ToOrFromRuleCondition
   Dim oSubjectCondition As Outlook.TextRuleCondition
   Dim oExceptSubject As Outlook.TextRuleCondition
   
   Dim oMoveTarget As Outlook.folder
   On Error Resume Next
   'Specify target folder for rule move action
   Set oInbox = Outlook.Session.Stores.Item("bookprice@xxxxxx.com").GetDefaultFolder(olFolderInbox).Folders.Item("Archive")
   'Debug.Print oInbox.FolderPath
   'Assume that target folder already exists
   Set oMoveTarget = oInbox.Folders(Folder_Name)
   'Get Rules from Session.DefaultStore object
   Set colRules = Outlook.Session.Stores.Item("bookprice@xxxxxx.com").GetRules()
   'Create the rule by adding a Receive Rule to Rules collection
   Set oRule = colRules.Create(Rname, olRuleReceive)
   'Specify the condition in a ToOrFromRuleCondition object
   'Condition is if the message is sent by "DanWilson"
   Set oSubjectCondition = oRule.Conditions.Subject
   With oSubjectCondition
      .Enabled = True
      .Text = Array(Rname)
   End With
   'Specify the action in a MoveOrCopyRuleAction object
   'Action is to move the message to the target folder
   Set oMoveRuleAction = oRule.Actions.MoveToFolder
   With oMoveRuleAction
      .Enabled = True
      .folder = oMoveTarget
   End With
   'Set rule to stop processing more rules
   Set oRuleAction = oRule.Actions.Stop
   With oRuleAction
      .Enabled = True
   End With
   'Update the server and display progress dialog
   colRules.Save

Open in new window

0
Comment
Question by:fordraiders
2 Comments
 
LVL 57

Accepted Solution

by:
Jim Dettman (Microsoft MVP/ EE MVE) earned 500 total points
ID: 41805134
Just as a side comment, seems to me you'd be better off just processing the items in the folder and do what the rule does via code and forget about rules entirely.  I don't have time to dig into this with you, but it seems like your heading in the wrong direction.

Jim.
0
 
LVL 3

Author Closing Comment

by:fordraiders
ID: 41805160
thanks
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
When you have clients or friends from around the world, it becomes a challenge to arrange a meeting or effectively manage your time. This is where Outlook's capability to show 2 time zones in one calendar comes in handy.
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

860 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question