The first macro is for those Outlook users who use Outlook's calendar as a journal and create appointments in the past. If you don't set the reminder to none, it will fire as soon as you create the appointment.
The second macro is for anyone who needs to remove reminders from old appointments.
We put appointments on the calendar that are in the past for record-keeping purposes. How can I stop the reminders for these appointments and keep reminders for future appointments?
To test, click in the Application_Startup macro and click the Run button.
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim Ns As Outlook.NameSpace
Set Ns = Application.GetNamespace("MAPI")
Set Items = Ns.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub Items_ItemAdd(ByVal Item As Object)
On Error Resume Next
Dim Appt As Outlook.AppointmentItem
If TypeOf Item Is Outlook.AppointmentItem And Item.Start < Now() Then
Set Appt = Item
Appt.ReminderSet = False
Appt.Save
End If
End Sub
Remove reminders on existing appointments
To remove reminders from existing appointments, use this VBA code. The reminders are removed from all appointments in the default calendar folder that have a start time prior to "now".
Public Sub RemoveReminder()
Dim Ns As Outlook.NameSpace
Dim Appt As Object
Set Ns = Application.GetNamespace("MAPI")
Set Items = Ns.GetDefaultFolder(olFolderCalendar).Items
For Each Appt In Items
On Error Resume Next
If Appt.Start < Now() Then
Appt.ReminderSet = False
Appt.Save
End If
Next
Set App = Nothing
Set Ns = Nothing
End Sub
More Information
This code is based on the VBA code at How to Remove Reminders on All Day Events

