How to Batch Delete All Exceptional Occurrences of a Recurring Outlook Appointment

If you want to quickly find all exceptional occurrences of a recurring appointment and delete them in batches, you can use the method introduced in this article.

After you create a recurring appointment, you may modify some of its occurrences. For example, you removed the reminders of the weekend occurrences, etc. In this situation, if later you think these exceptional occurrences are useless, you may be eager to delete them. Then, you can apply the approach shared thereinafter. It allows you to achieve this via a simple click.Batch Delete All Exceptional Occurrences of a Recurring Outlook Appointment

Batch Delete All Exceptional Occurrences of a Recurring Appointment

  1. For a start, launch Outlook VBA editor via “Alt + F11”.
  2. Then, in the new window, copy the following VBA code into a module.
Sub DeleteExceptionsfromOccurrencesOfRecurringAppointment()
    Dim objAppointment As Outlook.AppointmentItem
    Dim objCalendar As Outlook.Folder
    Dim objCalendarItems As Outlook.Items
    Dim objRecurrencePattern As Outlook.RecurrencePattern
    Dim objExceptions As Outlook.Exceptions
    Dim i As Long
    Dim objException As Outlook.Exception
    Dim objExceptionAppt As Outlook.AppointmentItem
    'Get the recurring appointment
    Set objAppointment = Outlook.Application.ActiveExplorer.Selection.Item(1)
    Set objCalendar = objAppointment.Parent.Parent
    Set objCalendarItems = objCalendar.Items
    Set objAppointment = objCalendarItems(objAppointment.Subject)
    'Get all exceptions in this recurring appt
    Set objRecurrencePattern = objAppointment.GetRecurrencePattern
    Set objExceptions = objRecurrencePattern.Exceptions
    'Delete the exceptions
    If objExceptions.Count > 0 Then
       For i = objExceptions.Count To 1 Step -1
           Set objException = objExceptions(i)
           Set objExceptionAppt = objException.AppointmentItem
           MsgBox objExceptions.Count & " exceptional appointments are deleted!", vbInformation + vbOKOnly
       MsgBox "No exceptional appointments!", vbInformation + vbOKOnly
    End If
End Sub

VBA Code - Batch Delete All Exceptional Occurrences of a Recurring Appointment

  1. After that, exit the current window.
  2. Subsequently, add this macro to Quick Access Toolbar on basis of the article – “How to Run VBA Code in Your Outlook“.
  3. Eventually, follow the steps listed below to try it.
  • Firstly, select one occurrence of the recurring appointment.
  • Then, click the macro button in the Quick Access Toolbar.Run Macro on Selected Appointment
  • When macro finishes, you will get a message about the results.Prompt about Results
  • At present, you can check the recurring appointment in calendar. All the exceptions of the recurring appointment have been deleted.Exceptional Occurrences Disappear

Tackle Outlook Issues

Outlook is widely used nowadays in that not only is it able to send/receive emails, but also it can help users to manage tasks, calendar and contacts, etc. But, even so, it is still vulnerable to many factors, including virus attack, hardware malfunction and software faults and so on. Hence, Outlook comes packed with an internal tool – Scanpst. You can make use of it to cope with common troubles in Outlook. But, if confronted with serious damage, you had better resort to a more powerful tool, like DataNumen Outlook Repair.

Author Introduction:

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

Comments are closed.