Keep Canceled Meetings on Outlook's Calendar

Last reviewed on October 3, 2012

Some users like to keep a history of all appointments, including canceled meetings. However, when you delete the cancellation notice from your Inbox, it deletes the meeting from the calendar too.

I want to keep canceled meetings on my calendar as it is useful when reviewing my calendar and wondering why I didn’t attend other meetings.

Most people want to clear out their Inbox and delete the cancellation notice, but to avoid removing the canceled meeting from your calendar, you need to keep the meeting cancellation notice. As long as the meeting cancellation notice remains in your mailbox and out of the Deleted Items folder, the meeting item remains on your calendar.


Meeting invitees have two options: They can create a folder to move the meeting cancellation notices into or they can use use a run a script rule to convert canceled meetings into appointments when the cancellation notices arrive. This will allow to you delete the meeting cancellation notice.

These options won't work for the meeting organizer. While you can get the cancelled meeting from the Deleted Items folder and move it back to the calendar, it's still a meeting. If you decide to delete it, Outlook will want to send another cancellation.

If the organizer needs to keep a copy of canceled meetings, he needs to create a copy of the meeting before canceling it. In Outlook 2010, right click and drag the meeting to a different calendar folder to create a copy. On page 2, we have a code sample organizers can use to copy the meeting request before canceling it.

Canceled meetings are left on Resource calendars. See Remove Canceled Meeting Requests from Resource Calendarfor a VBA sample that can remove the cancellation notices from Resource calendars.

Run a Script Rule to Convert a Canceled Meeting to an Appointment

Open Outlook's VBA editor (Alt+F11), expand Microsoft Office Outlook Objects then double click on ThisOutlookSession. Type or paste the code into the module, then create the rule with the 'run script' Action and select this script.

Sub CopyMeetingtoAppointment(oRequest As MeetingItem)

If oRequest.MessageClass <> "IPM.Schedule.Meeting.Canceled" Then
  Exit Sub
End If

Dim oAppt As AppointmentItem
Dim cAppt As AppointmentItem

Set cAppt = oRequest.GetAssociatedAppointment(True)
Set oAppt = Application.CreateItem(olAppointmentItem)

'I added (Rule) to the subject so I could see the rule was working. 
    oAppt.Subject = "(Rule) Canceled: " & cAppt.Subject
    oAppt.Start = cAppt.Start
    oAppt.Duration = cAppt.Duration
    oAppt.Location = cAppt.Location

    Set oAppt = Nothing
    Set cAppt = Nothing
End Sub

Next page >> Macro for Organizers to Copy then Cancel Meetings

Written by

Diane Poremsky
A Microsoft Outlook Most Valuable Professional (MVP) since 1999, Diane is the author of several books, including Outlook 2013 Absolute Beginners Book. She also created video training CDs and online training classes for Microsoft Outlook. You can find her helping people online in Outlook Forums as well as in the Microsoft Answers and TechNet forums.

If the Post Coment button disappears, press your Tab key.