How to Auto Send a Recurring Email Periodically with Outlook VBA

Do you want to send a recurring email at fixed interval, such as every Tuesday? This article will look at this issue and teach you how to achieve it by using a recurring task and Outlook VBA.

Perhaps you have known how to schedule sending a recurring email in that Outlook has a native support for deferring delivery. But this feature can simply allow you to specify a time for sending an email. It cannot permit you to let Outlook auto send the recurring email periodically, for instance, the 3rd Monday of every month, etc. Therefore, if you desire to send a specific email on a regular basis, you need to make some extra efforts. Here is a quick method, which will require you to create a recurring task item and copy the following VBA codes to the “ThisOutlookSession” project.

Auto Send a Recurring Email Periodically

  1. In the first place, launch Outlook and then switch to Tasks pane.
  2. Then click on “New Task” button in the ribbon.
  3. In the subsequent “New Task” window, you need to create a recurring task:
  • Firstly, type “send an email periodically” in the task subject line.
  • Then click the “Recurrence” button under “Task” tab,
  • Next set the task recurrence as per your needs.
  • After that, click “OK” to save the recurrence.
  • Lastly set the reminder time and click “Save & Close” button.Create a Recurring Task Item
  1. After that, turn to “Developer” tab and hit “Visual Basic” button to get access to VBA editor window.
  2. Later, you should copy the following VBA codes into the “ThisOutlookSession” project.
Private Sub Application_Reminder(ByVal Item As Object)
    Dim objPeriodicalMail As MailItem
    If Item.Class = olTask Then
       If InStr(LCase(Item.Subject), "send an email periodically") Then
          Set objPeriodicalMail = Outlook.Application.CreateItem(olMailItem)
          'Change the following email information as per your actual needs
          With objPeriodicalMail
               .Subject = "Test"
               .To = ""
               .HTMLBody = "<HTML><BODY>type body here</HTML></BODY>"
               .Attachments.Add ("C:\Attachments\DataNumen.docx")
               .Importance = olImportanceHigh
               .ReadReceiptRequested = True
          End With
       End If
    End If
End Sub

VBA Codes - Send an Email When the Task Item Reminder Pops up

  1. Subsequently, you ought to sign this code and change your macro settings to permit digitally signed macro.
  2. From now on, every time when the reminder of the new recurring task pops up, Outlook will automatically compose and send the email.

Note: After sending the recurring email, you should remember to mark the current task item as completed.

Handle Outlook Issues Tactfully

Since Outlook is vulnerable to various factors, you need to prepare for the worst all the time. For instance, you should keep a reputable and well-proven Outlook recovery utility in vicinity, such as DataNumen Outlook Repair. Thereby, even if you come across PST data corruption, you can get back the compromised data with utmost ease.

Author Introduction:

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

Comments are closed.