none
Delay email delivery in outlook during the weekend RRS feed

  • Question

  • I'm a CFO working for an American Multinational. Often I work in the weekend to clear out my email backlog but don't want the emails to go out during the weekend because that could pressurize employees to reply which I don't want/need. Work/Life balance is important.

    I know I can delay the delivery by changing the delivery date/time in the options menu in outlook but that I’ve to do with every email and once and while I forget.

    Have been searching the internet and found out you can do that in visual basic. I’ve been able to change the date to Monday but have failed the get the emails to be send at a specific time, let’s say 08:00.

    Can you please help?

    Thanks, Abraham

    Dim objMailItem As MailItem             'Object to hold mail item

    Set objMailItem = Item                    'Set object to mail item just sent

     If Weekday(Date, vbMonday) = 6 Then    'Check if today is Saturday

    objMailItem.DeferredDeliveryTime = DateAdd("D", 2, Now)       'Add 2 days

    End If

    Saturday, September 15, 2012 1:43 PM

Answers

  • The world could use more CFOs like you :-)

    Try something like the following - if the current date is Sunday or Saturday, the deferred delivery is set to 8:00 am of the following Monday.

    If Weekday(Date, vbMonday) = 6 Then    'Check if today is Saturday
      objMailItem.DeferredDeliveryTime = (Date + 2) + 8/24
    ElseIf Weekday(Date, vbMonday) = 7 Then    'Check if today is Sunday
      objMailItem.DeferredDeliveryTime = (Date + 1) + 8/24
    End If


    Dmitry Streblechenko (MVP)
    http://www.dimastr.com/redemption
    Redemption - what the Outlook
    Object Model should have been
    Version 5.3 is now available!

    Monday, September 17, 2012 6:19 AM

All replies

  • Although the names are similar, you appear to want a VBA (Visual Basic for Applications) forum rather than this VB.NET forum:

    http://social.msdn.microsoft.com/forums/en/isvvba/threads

    --
    Andrew

    Saturday, September 15, 2012 6:11 PM
  • The world could use more CFOs like you :-)

    Try something like the following - if the current date is Sunday or Saturday, the deferred delivery is set to 8:00 am of the following Monday.

    If Weekday(Date, vbMonday) = 6 Then    'Check if today is Saturday
      objMailItem.DeferredDeliveryTime = (Date + 2) + 8/24
    ElseIf Weekday(Date, vbMonday) = 7 Then    'Check if today is Sunday
      objMailItem.DeferredDeliveryTime = (Date + 1) + 8/24
    End If


    Dmitry Streblechenko (MVP)
    http://www.dimastr.com/redemption
    Redemption - what the Outlook
    Object Model should have been
    Version 5.3 is now available!

    Monday, September 17, 2012 6:19 AM