How to Batch Remove All Reminders in a Specific Time Interval via Outlook VBA

Sometimes, you may want to remove all the reminders in specific time interval for some reasons. Thus in this article, we will teach you an effective method to quickly remove them in batches.

In your Outlook, for some reasons, you may need to remove the reminders which are scheduled in a specific time interval. For example, maybe you have forgotten to dismiss the reminder when it alerts the first time, more and more overdue reminders are accumulated in your Outlook, which will pop up from time to time. That is considerably vexing. In this case, you must hope to kill them. Of course, apart from the overdue reminders, sometimes, you may also wish to delete the future reminders for some reasons. For instance, you’ll go for a vacation, thus the reminders occurring in the vacation are no longer needed.

All in all, at times, you will need to remove the reminders in specific time interval. If you select to find and remove them, it will be a pretty cumbersome and tedious task. Therefore, in the followings, we will introduce you a much faster tip, which is using Outlook VBA. Now read on to get the detailed steps and VBA codes.

Batch Remove All Reminders in a Specific Time Interval

Batch Remove All Reminders in a Specific Time Interval

  1. In the first place, you should start your Outlook program.
  2. Then in the main Outlook window, press “Alt + F11” key shortcuts.
  3. Next you will successfully enter the Outlook VBA editor.
  4. Subsequently, you should open a module which are not in use or insert a new module directly.
  5. After that, copy and paste the following codes into such a module.
Sub RemoveRemindersinSpecificTimeInterval()
    Dim objReminders As Outlook.Reminders
    Dim objReminder As Outlook.Reminder
    Dim dSpecificTime As Date
    Dim objItem
    Set objReminders = Outlook.Reminders
    'The following line refers to 1 day since the current time
    dSpecificTime = DateAdd("d", 1, Now)
    For Each objReminder In objReminders
        If objReminder.NextReminderDate <= Format(dSpecificTime, "ddddd h:nn AMPM") Then
           Set objItem = objReminder.Item
           objItem.ReminderSet = False
        End If
End Sub

VBA Codes - Batch Remove All Reminders in a Specific Time Interval


  • About “dSpecificTime”, you can also replace “Now” with a specific date or time, like dSpecificTime = DateAdd(“m”, 1, 10-4-2017), or dSpecificTime = DateAdd(“h”, 2, 10-4-2017 8:30AM).
  • Moreover, if you want to use a date range, you should specify the start date and end date. You can replace the lines related to “dSpecificTime” with the following lines:
Dim dStartDate As Date
Dim dEndDate As Date

‘You can change the specific dates as per your needs
dStartDate = "10-4-2017"
dEndDate = "12-4-2017"

If (objReminder.NextReminderDate >= Format(dStartDate, "ddddd h:nn AMPM")) And (objReminder.NextReminderDate <= Format(dEndDate, "ddddd h:nn AMPM")) Then
  1. After pasting the codes, you should ensure that your Outlook permits macros, so you have to change your Outlook macro security level to low.
  2. Finally click the “Run” icon in the toolbar. After the macro finishes running, all the reminders in the specific time interval will be removed at once.

Escape from Painful PST Data Loss

Since Outlook PST file is vulnerable, if you have a lot of valuable data in your PST file, you had better make some precautions to avoid the vexing PST data loss. For instance, you should build the habit of backing up PST file on a regular basis. In addition, you are better off getting hold of a proven fix tool, such as DataNumen Outlook Repair, which can help you to extract maximum data from the corrupted Outlook PST file.

Author Introduction:

Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including repair SQL Server and outlook repair software products. For more information visit