Delay email sending in Outlook (like gmail)

Today I decided to change one annoyance about Outlook… the fact that it sends out emails immediately and there’s no way to ‘undo’.

I have tried alternatives, like ‘explicit sending’, which results in my forgetting that the email didn’t go out, or using ‘delayed sending’, which is a pain, since you need to do it every time.

Wouldn’t it be better if I could have the option to ‘undo’ sending an email, or just let it be otherwise?

So, I’ve written this quick script in VBA which does just that.  In my case, it delays the sending of the email by 5 minutes… if you don’t withdraw it within that time, it simply gets sent… you can change the value to your liking in the code.

To get this done, simply add the following code to your ‘ThisOutlookSession’ class.

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
 Const defaultDelayInMinutes As Integer = 5

Dim timeToSend As Date
 Dim mi As Outlook.MailItem

 On Error GoTo ErrorHandler

 timeToSend = Now + TimeSerial(0, defaultDelayInMinutes, 0)

 Set mi = Item
 mi.DeferredDeliveryTime = timeToSend
Exit Sub

 MsgBox "Application_ItemSend: " & Err.Description
End Sub

5 thoughts on “Delay email sending in Outlook (like gmail)

  1. I seriously wish I understood enough about HTML to: 1) look at the code and know if would work 2) add it to Outlook in a way that my company IT department wouldn’t freak out.

    If the above code does actually work, you are awesome and I don’t know why you’re not Internet famous because EVERYONE can use this feature!

  2. I appreciate the code post, but are you aware that with this VBA active, it overwrites the built-in “Delay Send” feature of Outlook? For example, if you wanted to schedule an email to be sent two weeks from today, once you click “Send,” the VBA code overwrites the delay to only 5 minutes.

anything to say?

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s