# Send an email when an Appointment reminder fires

Last reviewed on December 30, 2013   —  100 comments

Another entry in my Lazy Programmer Series, this time I have a macro that sends an email message when a reminder fires. This macro was the result of a request for the ability to send messages to the sales team each morning with the day's agenda.

If you prefer to use an add-in, I have a list of reminder tools at Calendar Tools for Outlook

You can use the macro to send yourself reminders or even to compose an email message ahead of time (in the body of a an appointment form) and send it later. Outlook will need to be running and be able to connect to the mail server for the message to be generated and sent.

Because the message is composed when the reminder fires, the message time stamp will be the reminder time. Please don't abuse the trust others have in you: use this macro for legitimate purposes, not to convince someone you were working when you weren't!

Outlook needs to be running for these macros to work. Note, this will trigger the email security alert in older versions of Outlook. Use one of the tools listed at the end to dismiss the dialogs.

To use, press Alt+F11 to open the VBA editor then copy the code and paste it into ThisOutlookSession.

## Send a message to someone when a reminder fires

This macro checks for Appointment reminders and sends a message to the value in the location field. For this to be useful, you need to use a category, otherwise Outlook will attempt to send a message with every appointment reminder.


Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass <> "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories <> "Send Message" Then
Exit Sub
End If

objMsg.To = Item.Location
objMsg.Subject = Item.Subject
objMsg.Body = Item.Body
objMsg.Send

Set objMsg = Nothing
End Sub

To use a template instead of the default message form, replace Set objMsg = Application.CreateItem(olMailItem) with Set objMsg = Application.CreateItemFromTemplate("C:\path\to\test-rule.oft")

## Send a message to yourself when a reminder fires


Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem

Set objMsg = Application.CreateItem(olMailItem)

objMsg.To = "alias@domain.com"
objMsg.Subject = "Reminder: " & Item.Subject

' Code to handle the 4 types of items that can generate reminders
Select Case Item.Class
Case olAppointment '26
objMsg.Body = _
"Start: " & Item.Start & vbCrLf & _
"End: " & Item.End & vbCrLf & _
"Location: " & Item.Location & vbCrLf & _
"Details: " & vbCrLf & Item.Body
Case olContact '40
objMsg.Body = _
"Contact: " & Item.FullName & vbCrLf & _
"Phone: " & Item.BusinessTelephoneNumber & vbCrLf & _
"Contact Details: " & vbCrLf & Item.Body
Case olMail '43
objMsg.Body = _
"Due: " & Item.FlagDueBy & vbCrLf & _
"Details: " & vbCrLf & Item.Body
objMsg.Body = _
"Start: " & Item.StartDate & vbCrLf & _
"End: " & Item.DueDate & vbCrLf & _
"Details: " & vbCrLf & Item.Body
End Select

objMsg.Send
Set objMsg = Nothing
End Sub



## Select an appointment and send a message

With a few tweaks, the macro above can be used to send a message by selecting the appointment then running the macro.

1. Press Alt+F11 to open the VBA editor.
2. Right click on Project1 and choose Insert > Module.
3. Paste the code below into the Module.
4. Get the GetCurrentItem function from Outlook VBA: work with open item or selected item and paste it into the module.

Public Sub App_Reminder()
Dim Item As AppointmentItem
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

Set Item = GetCurrentItem()

With objMsg
'  .To = Item.Location
.Subject = Item.Subject
.Body = Item.Body
.Display ' use .Send to send it instead
End With

Set objMsg = Nothing
Set Item = Nothing

End Sub


Pop up a dialog

You can use the code on this page to do pretty much anything VBA can do when the reminder fires.

This simple code sample displays a dialog box to remind you.

Private Sub Application_Reminder(ByVal Item As Object)

If Item.MessageClass <> "IPM.Appointment" Then
Exit Sub
End If

MsgBox "You have an appointment for " & vbCrLf _
& Item.Subject & vbCrLf _
& "on " & Format(Item.Start, "mmm dd") & vbCrLf _
& "Time: " & Format(Item.Start, "hh:mm AM/PM") _
& vbCrLf & "Location: " & Item.Location

End Sub



### Tools

Open a webpage when a Task reminder fires
To send an email daily using a Task, see E-Mail: Send daily (vboffice.net)

#### 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.

Please post long or more complicated questions at Outlookforums.

### 100 responses to “Send an email when an Appointment reminder fires”

1. I have a question: how does this run?

Once it is copied into the OUTLOOK SESSION as indicated, is every REMINDER going to generate an EMail? For example I have various AGENDA ITEMS as I program all my activities in OUTLOOK and they all have a reminder that pops up in the REMINDER WINDOW, will I receive a REMINDER Email for all of these?

Additionally, would it be possible to make it AGENDA ITEM specific, ie. for AGENDA ITEM with POP UP REMINDER one could elect to ALSO get an Email REMINDING of the AGENDA ITEM.

Roger Bertrand, P. Eng.

2. Ok. Thanks. Is there a way to assign the REMINDER FIRING specifically to a particular agenda item?I have all teh AGENDA ITEMS with notification so they pop up in the notification window and there I track them. Now some of these I would like to receive a REMINDER EMAIL so I could assign it a FOLLOW UP and PRIORITY. Is this feasible?

As I understand this VBA code, it would send me an EMAIL for all the AGENDA ITEMS I have setup since they all have a NOTIFICATION REMINDER in my case, correct or wrong?

3. Please let me rephrase my question: all my agenda items have a category and all have a reminder so they pop up in the notification window. Therefore under this scheme would I reeceive an Email reminder?

Secondly, fi I wanted to make this process selcetive, that is for a specific agenda Item I would like that in addition to the Pop Up Reminder I would receive a Reminder Email, can that be done?

Thanks,

Roger

4. Please let me ask you if this would work: if I want only some messages to have an Email fired to me, would it work if I created a new category, say "Send EMail", and then set this category along with any other category to items I would like to have an Email sent to me?

Where would I insert that code so only those I want a reminder Email are fileterd through that catefory:

If Item.Categories = "Send Email" Then

I assume I could do the same on the first VBA to ahve only Items flagged with the "SEND EMAIL" category fire the EMail Reminder?

Thanks ,

Roger

PS: excuse my low level knowledge of VBA, I am not that trained to using VBA with OUTLOOK. I use a lot more with EXCEL.

5. I created this macro and it seemed to work the first week, but on subsequent weeks, the email is not going out. I checked and the code is still there. The Category is set to Send Message and is the only category. But I do have multiple email addresses separated by semicolons in the Location field.
I am using Windows 7 and Office 2007 if that makes a difference.
Can you suggest a place to begin further troubleshooting?
Thank you.

6. The following is a code i got working to send me an email when a reminder fires however it does not include any details about the reminder....Can you help?? thanks so much

Private Sub Application_Reminder(ByVal EventItem As Object)

Dim MailMsg As MailItem

Set MailMsg = Application.CreateItem(olMailItem)

If EventItem.MessageClass = "IPM.Appointment" Then

Call SendApptMail(MailMsg, EventItem)

End If

Set MailMsg = Nothing

End Sub

Sub SendApptMail(Mail_Item As Object, Appt_Item As Object)

Mail_Item.To = "email@email.com"

Mail_Item.Subject = "Reminder Time Off"

Mail_Item.HTMLBody = "Just a reminder that in the near future someone has requested a day off. Thank You"

Mail_Item.Send

End Sub

7. Hello I want to start off by saying by no means am I knowledgable with VB. I am trying to set it up as described, but one of the things I find confusing is why would one want to send it back to your own e-mail account. I tried to alter the code with my text pager e-mail address and I get a complie error everytime the reminder pops up. I appreaciate any help you can offer. Thanks Howard

8. Ok it works. I was copying and pasting inproperly. One problem I do have though is I get the following message- "A program is trying to access E-Mail addresses you have stored in Outlook. Do you want to allow this? If this is unexpected, it may be a virus and you should choose "No" Allow access for 1 thru 10 mimutes. I want to say thanks for getting back to me so fast and also say thanks for your code. Howard

9. Thank you for your help, but its not going to work for me . IT gives me no control over the computer whatsoever. I am even surprised that I was able to execute the vb code without permission from god himself. It's ashame cause they wont get me a smart phone, and I am simply too busy out in the field to remember every meeting or appointment. I was so pysched when it ran that I would have actually been able to do something to make myself more productive. Thanks for the help. Howard

10. I have implimented your send an email and open web page task VBA and have the page opening and the task emailed. What I would like to have happen is to have the opened page sent via email with the opened page in the body of the email. Can this be done?

11. Hi Diane,

Would it be possible to edit the code so that when every reminder fires up, and email alert will be sent also to the attendees of the meeting for example?

12. Hi Dianne,

A bit off topic, but is there a way that I could create an email containing similar information to your example but attach the macro to a button in the toolbar so that I can select the appointment, push the button and it will generate the email?

13. Thanks Dianne,

I have that working fantastically. Just one other thing... Everything works now as long as I have the appointment either open or selected. But at the moment it only works if the appointment is selected in the main calendar window. Is there a way to have it work if the required appointment is selected in the to-do bar?

14. Thanks Dianne,

Much appreciated.

15. Hello Diane

I am trying to use your macro but it didn't work, so I'd like to check what I have done wrong! I copied and pasted your macro into Outlook ThisSessionOutlook and saved it. I then created an Appointment in Outlook Calander with the location as my own email address. The reminder pops up but there is no email sent to my address. Any idea what I did wrong?

Cheers
Stewart

16. Did you have any luck with this Diane? I have hit a wall with this one.

17. If the Calendar is the active window and an appointment is selected in the To-Do bar the following error is received:-

Run-time error '91':

Object variable or With block variable not set

If any other window is active (Mail, Contacts, Tasks etc) and an appointment is selected in the To-Do bar the following error is received...

Run-time error '13':

Type mismatch

Hopefully that will give some insight into where I am going wrong.

18. Hello Diane. I wouid like to use an Add-in that checks for Appointment reminders and sends a message to the address in the location field or another field. So not to my own email address. After looking at the Add-Ins using the link, I can't see one that seems to do this. They seem to only send emails reminders to the event organiser. Can you suggest an Add-In? Thanks, Stewart.

19. Hi - I'm sort of a newbie at this stuff. Your code is very helpful, I'm sure, and thank you - but I'm not sure exactly where in the code I enter the pertinent details? Let me give you an example. Let's say I want to write an email to akivaf@gmail.com every day with the subject "Test" and the body, "If this works, then the macro worked." The appointment on my calendar will be every day at 8:00 AM, and I made the category "Test" which I have placed it in. Given those instructions, can you please tell me EXACTLY what to do, maybe paste the code with my pertinent details in it so I can know what to do? THANK YOU SO MUCH in advance!

20. Also, I have Outlook 2013, does that change anything? Also, what if I want to send to multiple email addresses?

21. Sorry Diane, you lost me. How would I add the macro to the Calendar Tools/Appointment Ribbon?

It is essential that the script sent a reminder of the meeting to all those listed in the "To" field and how to do it I do not know (

23. Works like a charm. You are amazing! Thank you.

24. This worked perfectly on the first day but hasn't since (4 days). OL14.06 x32 on W7 SP1 x64. Any suggestions?

25. You got it. I never thought to check the security as it worked fine the first day without touching the macro security. Restarting Outlook enforced the security. Kinda odd. Thanks again.

26. And... I even figured out how to easily digitally sign this code so I could return the security setting to the highest possible. Thanks again!

27. THANK YOU! You're wonderful! Also, an easy way to send to multiple addresses ... you can simply create a group list in your contacts and type the group name in the location field. Works perfectly.

28. Thanks to this site for the idea of using the Reminder event for an appointment, etc. and for using the fields of the appointment to populate the email data. Perhaps the edits/additions I have done will be helpful to those who want to append a signature to the email.

' Run when a reminder fires
Private Sub Application_Reminder(ByVal Item As Object)
Dim oMsg As MailItem
Set oMsg = Application.CreateItem(olMailItem)

' Only handle appointment reminders (may change later)
If Item.MessageClass "IPM.Appointment" Then
Exit Sub
End If
Dim oAppt As Outlook.AppointmentItem
Set oAppt = Item
' Only do for Category "Send Reminder Message"
If Not InStr(oAppt.Categories, "Send Reminder Message") >= 0 Then
Exit Sub
End If

oMsg.To = Item.Location
oMsg.Subject = Item.Subject
oMsg.Body = Item.Body
Dim sig As String
oMsg.HTMLBody = Item.Body & "" & sig ' oMsg.HTMLBody

' Try to specify sending account
Dim oAccount As Outlook.Account
For Each oAccount In Application.Session.Accounts
If oAccount.DisplayName = "alias@domains.com" Then
oMsg.SendUsingAccount = oAccount
Exit For
End If
Next
oMsg.Send
Set oMsg = Nothing
End Sub

Private Function ReadSignature(sigName As String) As String
Dim oFSO, oTextStream, oSig As Object
Dim appDataDir, sig, sigPath, fileName As String
sigPath = appDataDir & "" & sigName
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oTextStream = oFSO.OpenTextFile(sigPath)
' fix up relative path references to images in the sig file
fileName = Replace(sigName, ".htm", "") & "_files/"
sig = Replace(sig, fileName, appDataDir & "" & fileName)
End Function

29. Hi Diane,

Tried the above code and it worked for the first day and stopped working after that. I've also changed the security level but it hasn't worked since. Here's my code:

Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass <> "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories <> "Test" Then
Exit Sub
End If

objMsg.To = "abc@hotmail.com"
objMsg.CC = "abc@hotmail.com"
objMsg.Subject = "Test"
objMsg.Body = "Testing Testing 1 2 3"
objMsg.Send

Set objMsg = Nothing
End Sub

30. Hi Diane,

Tried that too.. Still doesn't work. Macro security is set at "No security checks for macros"

31. Hi Diane,

I'm trying to send the email from a template. From what I understand from your other threads, I just need to edit the "Set objMsg" row. So the code should look like:

Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories "Test" Then
Exit Sub
End If

objMsg.To = "Doe, John"
objMsg.CC = "Doe, John"
objMsg.Subject = "Template"
objMsg.Send

Set objMsg = ("C:\templates\template.oft")
End Sub

Is this correct?

32. Hi Diane,
I have attempted to run the code for "Send a message to someone when a reminder fires"
1. The person I need to remind when an appointment reminder fires is me.
2. If I use an email address that is outside our exchange network... menaing i have to type in an email address such as a hotmail , and or live account it works fine.
3. If I am just using my internal email address that is in the GAL. then it gives me an error: "Outlook does not Recognize One or More Names" and highlights the objMsg.Send. Im not sure what is happening as does this only work with typed in email addresses? when I type in my corporate email address it reverts to my named refered in the GAL. I hope this makes sense, thanks

33. Hi Diane,
The code work but will not send the email it only goes to the outbox. How can I fix that?
Here is the code I am using:
Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItemFromTemplate("C:\Users\MCWIED\Documents\Cal.oft")

If Item.MessageClass "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories "Send Message" Then
Exit Sub
End If

objMsg.To = Item.Location
objMsg.Subject = Item.Subject
objMsg.Body = Item.Body
objMsg.Send

Set objMsg = Nothing
End Sub

34. Hi Diane,
This is exactly what I need for some bills. We have a billing agreement in place and I need to send a reminder every 2 weeks at 10:00 to the business to have them process the agreement. I also need to copy our accounts email in on this as well.

1) Do I copy & paste this new code (send email on reminder) under the Auto BCC code?
2) What is the string to include a CC/To for the other email? (process@company & accounts@company)

It's not a meeting so I don't want to use the "attendees" function, it's just an email to process a payment.

Lastly, when this triggers will the Auto BCC also trigger? (I want this in case of dispute of email being sent).

Karen

35. Genius! Thank you Diane.
This is my finished code :) A little bit of everything in here :D I'm thrilled I managed to piece it together and it works.

-----
Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories "Bus - ACCs FK" Then
Exit Sub
End If

objMsg.To = Item.Location
objMsg.Subject = Format(Now, "YYYYMMDD - HH:mm:ss") & " | " & Item.Subject
objMsg.Body = Item.Body
objMsg.BCC = "deviceemail@mydevice"
objMsg.Send

Set objMsg = Nothing
End Sub
-----

I don't check my regular BCC addresses on my phone so I need to hardcode my phone email so I can check it when I'm out at an appointment so I know that this email goes through. It's a time sensitive one so I need to make sure I have the date in the subject (or body, i'm going to try both :D) so the receiver knows it's a new reminder.

Using multiple categories for things isn't a problem, i'll just keep creating categories as my variable emails are required. In this case the receiver, the CC & BCC will never change so it will have it's own category.

Thank you :D

36. Hi Diane,
Sorry to bug you :) I've learnt a lot the last few days and your site has helped me tremendously.

I now want to expand my code a little further.
I'm trying to automate this new email schedule as much as possible, with a set & forget ideal.

-> Appointment Reminder triggers email
-> Email is sent (with attachment, coded)
-> Email is saved to HDD folder
-> EMail (sent) is moved from the Outlook Sent Box to Accounts/Sent Outlook folder

I've managed to get the email to send as HTML (excluding the inserted time), and I've been able to attach 1 file (I haven't tried to include 2), so now I need to file & tidy my sent box & HD emails. :)

So, these are my 2 questions:

1) I have managed to get HTML to work in the email:
objMsg.HTMLBody = Format(Now, "Long Date") & Item.Body
The HTML is edited in my appointment screen & it works great.

I can not however work out how to also get the automated time to become HTML. I have tried all sorts of variations in the VB code.
eg: objMsg.HTMLBody = Format(Now, "Long Date") & Item.Body
However nothing seems to work to get the date to be in the HTML format, it throws a syntax error no matter how it's coded.

2) Also, I'd like to be able to save the email to my HD (specifically my backup folder that syncs to dropbox & box), nothing fancy in the saveas title, just the email as it is: Subject = Format(Now, "YYYYMMDD - HH:mm:ss") & " | " & Item.Subject
so it would be: 20131208 - 0054 | Accounts Reminder.msg
folder: e:/blah/blah/accounts/company/notices/.msg

I know I can do a bulk saveas using VBA (which I'd need to look into to schedule it monthly), but I'd like to be able to do it at the time the email sends.

2.b) Can I add to this script a move to folder (outlook) at the end of the "generate new mail" script? re: -> EMail (sent) is moved from the Outlook Sent Box to Accounts/Sent Outlook folder

Thank you for help & support in advance.

Karen

37. Hi,

Many thanks for this. I was hoping somebody would be able to help me with categories, I want to be specific about what I send to who so I've created separate categories. I was just wondering how to incorporate this into the code? What I need to ask the code to do is: if it is for category A send an email, if it's for category B send an email. I'm getting very confused with IF statements!

Thanks :D

38. Hi Diane,

Sorry, I'm really struggling with this. I've spent a few days playing around but can't get it to do what I want.

For an examples sake say that I have 2 categories:

Category A - reminder to send to cata@example.co.uk
Category B - reminder to send to catb@example.co.uk

I can only ever get Category A to send. I've tried a few different ways but it keeps failing, I would be very grateful for any help.

Thanks,
Emily :D

39. It works perfectly! Thank you for your help. :)

40. Diane, I used the Send a message to someone when a reminder fires code and copied it in and it fires as expected, problem is I get a runtime error Outlook does not recognize one or more name. When I debug, it points to the objMsg.Send line. Any clues?

41. hi,

Can you help me with code that trigger email if I have not sent email to particular address before particular time..... thanks in advance

42. ReRead description and was able to see what I was doing wrong. Code works great. Thanks so much Diane.

43. Hi, I'm missing something, I added the code you developed into the ThisOutlookSession. Then you keep mentioning macro's. Do I copy this same code and place it in a macro or reference it? I haven't done anything like this before and it looks like exactly what I need. Any further instructions would be appreciated.

Thanks

44. Hi Diane,
Thanks for the great information. I'm new to this and I'm trying to implement the "Select an appointment and send a message" code and have two questions. Is the code you have in this step all that is needed. The text reads "With a few tweaks, the macro above can be used to send a message by selecting the appointment then running the macro." Does that mean you need the previous text and what you have listed in that section?

Additionally, I don't really understand the step: "Get the GetCurrentItem function from..." I followed the link and tried a couple things but it kept resulting in compile errors so I'm missing something. Ideally this would work if I ran the macro with the appointment opened or if I have it selected.

45. Hi Diane,

I'm trying to have a reminder email only for appointments that I run the macro on manually. I tried working with "Select an appointment and send a message" but I don't understand the part pertaining to the GetCurrentItem function. Ideally I could run the macro whether I had an item open or if I had it selected in the calendar. If I had to choose between the two I wold prefer to select the appointment and run the macro. I followed the link and tried a couple options but I kept getting run-time errors. I'm new to VBA so I'm probably missing something.
The way I read it, do I paste the "Send a message to yourself when a reminder fires" in the ThisOutlookSession and then use the "Select an Appointment code in a module?

Thanks,

46. Hi Diane,

This is working great for me apart from when I create recurring appointments, the reminder comes up but the email doesn't fire. Should it work?

Thanks,
Emma

47. Thanks for the reply and sorry for spamming you with the same question. That worked but I think I misunderstood what the macro was doing. I am trying to accomplish a combination of the Send a message to yourself and Send a message when a reminder fires. I want to receive an email notification for some items but not all. My thought is that I would select the appointment I need the reminder to occur on, run the macro and then receive the email when the reminder fires.

Thanks again!

48. I have more people I need to send the e-mail too then can fit in the location field. About 40 people in all. Any idea how to set this up? When I create a contact group, the macro errors out when it try's to send.

49. Run-time error'-2147467259 (80004005)':

Outlook does not recognize one or more of the names.

Current the group name is Test. I have (2) e-mails in the group and both are correct. In the location field, I have entered Test.

50. Hello, I am using your script (the 1st on), and it works great.
But I need additional function - to send a link with that e-mail.
I've used:
ObjMsg.Body = strLink & " " & " This e-mail was generated automatically"
But it sends the link as a plain text only. Do you have any advice for me?
Thank you

51. Hello,
I solved it by this:
ObjMsg.HTMLBody = "" & _
"My Excel" & _
"This email was generated automatically" & ""

52. Hi Diane,
I am brand new to this and most of it is over my head. I have tried a few of the codes but not having much luck because i don't know what to fill in where in the code. I successfully used the "send reminder to yourself" code but put my coworkers email in instead of mine.

Here is what i'm trying to do. I have a shared calendar for myself and 2 coworkers. I am the only one that receives reminders, so i was hoping to add the code so that when i receive the reminder they get an email about it. I want this to only happen when reminder is for the calendar "Pharmacy Schedule" and not for my personal email calendar. I this possible?
Can you please help by pasting code here and showing me where to put their emails: ie coworker1@email.com and coworker2@email.com. and Pharmacy Schedule. Thanks in advance!

53. Thank you Diane! It's working! This solved a big problem for me, greatly appreciated!

54. Hi Diane, i was wondering if the above code work if lets say i have alot appointment and i wish to send a reminder to attendee based on different appointment. Is it possible to do that?

Thanks!

55. Hi Diane,

I have no problem getting this working but unfortunately when it does fire it just keeps spilling out messages until I turn the reminders to none or delete/dismiss the message.

Looks good but at the minute too effective :)

Thanks for your time, you must be irritated by supporting this a couple of years after you posted it!

Cheers,

Matt

56. Thanks Dianne, So something like this?

Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass <> "IPM.Appointment" Then
Exit Sub
End If

If Item.Categories <> "Appraisal Reminders" Then
Exit Sub
End If

objMsg.To = Item.Location
objMsg.Subject = Item.Subject
objMsg.Body = Item.Body
objMsg.Send

Set objMsg = Nothing

Item.Categories = "Message Sent"
Item.Save

End Sub

57. Private Sub Application_Reminder(ByVal Item As Object) Dim objMsg As MailItem Set objMsg = Application.CreateItem(olMailItem) If Item.MessageClass "IPM.Appointment" Then Exit Sub End If If Item.Categories "Send Message" Then Exit Sub End If objMsg.To = Item.Location objMsg.Subject = Item.Subject objMsg.Body = Item.Body objMsg.Send Set objMsg = Nothing End Sub

It works well for me.. but I would like to have additional cc field.. how can this be done?

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