How to Quickly Delay Sending Specific Emails until Working Hours in Your Outlook

If you need to prevent yourself from sending specific emails outside working hours, you can utilize the method shown in this article. It can let Outlook auto check if it’s in working hours when you send specific emails and delay it until working hours.

At times, the time when you compose and send a mail isn’t within your working hours. In this case, you may wish to delay sending this email until the subsequent working hours. Generally, you can use the native feature “Delay Delivery” to delay such emails. However, by that means, you ought to specify the delivery time every time. It is too troublesome. Thereinafter, we will share you a piece of VBA code, which can auto check if it is within working hours when you send a specific email and rapidly delay sending it until the working hours.

Quickly Delay Sending Specific Emails until Working Hours in Your Outlook

Quickly Delay Sending Specific Emails until Working Hours

  1. At the very outset, launch your Outlook program.
  2. Then in the emerging Outlook main screen, you could press “Alt + F11” keys.
  3. Next you will get access to Outlook VBA editor in success.
  4. After that, you need to locate and open the “ThisOutlookSession” project.
  5. Subsequently, copy the following VBA code into this project window.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim objMail As MailItem
    Dim NewSendTime As String
    Dim bDelayMail As Boolean
    Dim nPrompt As Integer
 
    bDelayMail = True
 
    If TypeOf Item Is MailItem Then
       Set objMail = Item
 
       'Work on specific emails only
       'You can change the conditions as per your needs
       If objMail.Recipients.Item(1).Address = "boss@datanumen.com" Then
 
          Select Case Weekday(Date, vbMonday)
                 'Delay 2 days if today is Saturday
                 Case 6
                      NewSendTime = (Date + 2) & " 09:00:00"
                 'Delay 1 days if today is Saturday
                 Case 7
                      NewSendTime = (Date + 1) & " 09:00:00"
                 Case Else
                      If DatePart("h", Now) < 9 Then
                         'Delay to 9 o'clock if now is too early
                         NewSendTime = Date & " 09:00:00"
                      ElseIf DatePart("h", Now) > 18 Then
                         Select Case Weekday(Date, vbMonday)
                                'Delay 3 days if today is Friday and now is over 6 PM
                                Case 5
                                     NewSendTime = (Date + 3) & " 09:00:00"
                                'Delay to 9 o'clock if now is before 6 PM
                                Case Else
                                     NewSendTime = (Date + 1) & " 09:00:00"
                         End Select
                      Else
                         bDelayMail = False
                      End If
            End Select
 
            If bDelayMail = True And objMail.DeferredDeliveryTime = "1/1/4501" Then
               'Ask if to delay sending this email
               nPrompt = MsgBox("Outside Working Hours:" & vbCrLf & "Do you want to delay this email until " & NewSendTime & "?", vbYesNo + vbExclamation, "Delay Email")
 
               If nPrompt = vbYes Then
                  objMail.DeferredDeliveryTime = NewSendTime
               Else
                  objMail.DeferredDeliveryTime = "1/1/4501"
               End If
           End If
       End If
    End If
End Sub

VBA Code - Delay Sending Specific Emails until Working Hours

  1. Later you will be required to assign a digital certificate to this email.
  2. And then change your Outlook macro settings to permit the signed macros.
  3. From now on, every time you send emails which meet the predefined criteria, if it is outside working hours, you will get a prompt like the following image:Prompt Next Working Hours
  4. If you select “Yes”, Outlook will schedule it to be sent out until working hours.

Rescue Damaged Outlook Files

Outlook has earned a lot of kudos due to its myriad features. However, it still has a deadly flaw. That is Outlook is prone to errors and corruption. Hence, you ought to back up your Outlook files on a regular basis. It can prevent you from suffering painful Outlook data loss. In addition, you had better get hold of a mighty repair tool, such as DataNumen Outlook Repair, which can repair Outlook issues within seconds.

Author Introduction:

Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including mdf recovery and outlook repair software products. For more information visit www.datanumen.com

Leave a Reply

Your email address will not be published. Required fields are marked *