Creating an Outlook Appointment based on an Email Message
I've always wanted to do this: I get an email message and I want to create an appointment from the the message. It's a simple task and I found that this was one of the goals of Chandler in the book that I'm reading right now, Dreaming in Code by Scott Rosenberg. Incidentally, I just met Scott at Scoble's Geek/Blogger dinner in San Francisco last week. From the book, I learned that the software architecture that the Chandler team was using to accomplish this task was very complex. I looked into the Outlook 2007 UI I did not find this feature. Last week I visited a customer and the engineering manager there asked how to do this. The beauty of Outlook is that it is programmable! In about an hour, I was able to write a short VBA Macro that does the following:
- If the current item is an email, create a new appointment item
- Copy the categories, body, and subject
- Copy the attachments
- Add the sender as a meeting participant
- Add each email recipient as a meeting participant
- Each To: participant will be a required
- Each CC: or BCC: participant will be optional
I then added the macro to my quick launch bar for an Outlook message and it worked!
I have attached the macro for all of you to try out.
Enjoy,
Michael
5/24/2007: Updated macro to fix bug with copying attachments.