Deferring e-mails with Outlook
** Updated 18-Mar-15 to include Today and Tomorrow as instructions **
Introduction
I use Outlook at lot, and in particular reminders. However I have a bit of a blind spot with reminders (mainly because of the window constantly popping up).
To combat this I only use them for non-essential reminders that don’t need doing on a particular day - like cleaning the car; It needs doing at some point but there’s no pressing deadline for it (or in my case, it’s just never ).
For more deadline based reminders I use deferred e-mails to send myself an e-mail at some point in the future, I tend to pay more attention to my Inbox:
The UI is fine for occasional use, but it’s a bit long winded for what I need. I typically just want a reminder in 2 days or 2 weeks time.
So I cranked up my VBA skills to do something about it!
Usage
In essence I’d like to be able to create a normal blank e-mail, then [easily] instruct Outlook to defer the sending of the e-mail to some point in time. Adding the instruction in the Subject field seems like a natural starting point:
We create the e-mail as normal, with a normal subject line but add a :: delimiter at the end. This will tell our VBA code to look at what follows and convert it into future time. Here’s some example subject lines:
- Make a brew :: in 20 minutes
- Set off for the dentist appointment :: on 23/3/15 at 3pm
- Lunch with Fred :: at 13:00
- Lunch with Wilma :: today at 1pm
- Lunch with Betty :: tomorrow at 1pm
Then fill in the body of the e-mail and Send as normal. Behind the scenes the macro populates the Delay Delivery settings as you would expect and the e-mail will quietly sit in your Outbox until it’s ready to go.
Installation
Installation is pretty straightforward.
- Enable the Developer tab in Outlook (if you haven’t already)
- Download the Deferrer.bas file and save it on your machine.
- Download the ThisOutlookSession.cls file and save it to your machine.
- In Outlook, click the Developer tab > Visual Basic button.
- In the IDE that opens, right click on Modules and select Import File and locate the Deferrer.bas file you downloaded earlier.
- Still in the IDE, right click on Microsoft Outlook Objects and select Import File and locate the ThisOutlookSession.cls file you downloaded earlier.
- Restart Outlook
Test Installation
With a bit of luck everything is installed correctly, so create a new blank e-mail with “Test ::in 1 minute” in the subject line. Hopefully it will sit in your Outbox for a while before magically appearing in your Inbox.
Finishing off …
A few things to keep in mind:
- The above was developed with Outlook 2010, but should work with later versions (though if it doesn’t, you’re on your own!).
- Outlook needs to be running for the e-mail to send; don’t rely on some Exchange Server magic to happen.
- The installation process is more than a bit rubbish, if you’ve a better way please mention it in the comments.
Until next time!
Posted in : techie-stuff, tips, office