Creating Custom Reminders


I was on Twitter last night looking for tweets about Outlook when I stumbled across this one.

Here’s my reply and Jake’s follow-up.

Creating some reminders is easy enough, so I put a solution together for Jake. Here’s how it works.

When Jake runs the macro it will prompt him for the name of a client. Once he enters that the macro will create the three reminders Jake wants. The macro includes options allowing Jake to control the type of reminder (task or calendar event), the reminder’s subject line, the category the reminders will belong to (Jake can color code them if he wants), the number of minutes before the event’s start time to show the reminder (if Jake sets the type to Event), the time to display the reminders (if Jake set the type to Task), and the length of the event on the calendar (if Jake sets the type to Event).
Continue reading

Exporting Outlook Tasks to Excel


In an earlier post, I showed a number of ways to export Outlook messages to Excel. Mitesh saw that post and asked if it’d be possible to adapt it to export Outlook tasks instead of messages. The answer, of course, is “yes”. In fact, you could adapt the code from the original post to export any of Outlook’s basic item types (i.e. appointments, contacts, messages, notes, tasks). All Mitesh needs to do is change the list of item properties the code exports. Where an email has properties called “Subject”, “ReceivedTime”, and “SenderEmailAddress” (to name a few), a task has “Subject”, “StartDate”, and “DueDate”. In order to change the script to handle a different item type, you need to know the properties of that item type. Microsoft has pages on its site that list the complete set of a task item’s properties for Outlook 2007, Outlook 2010, and Outlook 2013. For this example, I’ve chosen a subset of task properties. You can add, delete, and/or rearrange them to suit your needs.

Some properties (e.g. DelegationState, Ownership) are enumerations. An enumeration stores a numeric value that equates to something. For example, a 0 in DelegationState means the task is not delegated, while a 2 means that the task has been delegated and the person it is delegated to has accepted it. Rather than exporting the numeric value stored in an enumerated property, I wrote functions that returns a more meaningful value in plain English. I only wrote those functions for enumerated fields I used in this example. There are other enumerated fields that would benefit from a similar conversion if you include them in your export. Once again, you can refer to Microsoft’s documentation to see which properties are enumerated, the values in the enumeration, and what each value stands for.

Continue reading