VBA to delete Outlook messages from a user created folder over certain time period

13,697

Here is a example script

Sub DeleteOlderThan6months()

Dim oFolder As Folder
Dim Date6months As Date
Dim ItemsOverMonths As Outlook.Items

Dim DateToCheck As String

Date6months = DateAdd("d", -182, Now())
Date6months = Format(Date6months, "mm/dd/yyyy")


Set oFolder = Application.Session.PickFolder 'or set your folder

DateToCheck = "[Received] <= """ & Date6months & """"

Set ItemsOverMonths = oFolder.Items.Restrict(DateToCheck)

For i = ItemsOverMonths.Count To 1 Step -1
    ItemsOverMonths.Item(i).Delete
Next


Set ItemsOverMonths = Nothing
Set oFolder = Nothing


End Sub
Share:
13,697
user54729
Author by

user54729

Updated on June 05, 2022

Comments

  • user54729
    user54729 almost 2 years

    I'm looking for a VBA code snippet to delete Outlook messages that are six (6) months or older and sit in a user-created folder.

    What does that code look like?