Outlook: How to auto resend email if no response
When you send an email to your colleague or cooperative partner or someone and need a response urgently, you can set an auto resend email setting if the response has not arrived before a specified time.
Using Reminder and VBA to set auto resend if no response
- Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by rules; Auto Reply without exchange server, and more automatic features...
- BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
- Reply (All) With All Attachments in the mail conversation; Reply Many Emails at once; Auto Add Greeting when reply; Auto Add Date&Time into subject...
- Attachment Tools: Auto Detach, Compress All, Rename All, Auto Save All... Quick Report, Count Selected Mails, Remove Duplicate Mails and Contacts...
- More than 100 advanced features will solve most of your problems in Outlook 2021 - 2010 or Office 365. Full features 60-day free trial.
Using Reminder and VBA to set auto resend if no response
Part 1: set a reminder to remind in a specified time
1. Right click on an email (from Sent Items folder) that you want to resend if no response, in the popping context menu, click Follow Up > Add Reminder.
2. In the popping Custom dialog, keep the Reminder checkbox ticked, then in the below drop-down boxes, choose a date and time that you want the response arrived before, also you can directly type the date and time in the boxes. Click OK.
Part 2: Insert a VBA to resend emails if no response in the specified time
3. Press Alt + F11 keys to enable the Microsoft Visual Basic for Applications window.
4. Double click ThisOutlookSession in the Project – Project1 pane to create a blank script, and copy and paste the below VBA code into the blank script.
VBA: Resend email if no response
Public WithEvents GInboxItems As Outlook.Items
'UpdatebyExtendoffice20220413
Private Sub Application_Startup()
Dim xInboxFld As Folder
Set xInboxFld = Application.Session.GetDefaultFolder(olFolderInbox)
Set GInboxItems = xInboxFld.Items
End Sub
'Judge
Private Sub GInboxItems_ItemAdd(ByVal Item As Object)
Dim xSentItems As Outlook.Items
Dim xMail As MailItem
Dim i As Long
Dim xSubject As String
Dim xItemSubject As String
Dim xSendTime As String
On Error Resume Next
Set xSentItems = Application.Session.GetDefaultFolder(olFolderSentMail).Items
If Item.Class <> olMail Then Exit Sub
For i = xSentItems.Count To 1 Step -1
If xSentItems.Item(i).Class = olMail Then
Set xMail = xSentItems.Item(i)
xSubject = LCase(xMail.Subject)
xSendTime = xMail.SentOn
xItemSubject = LCase(Item.Subject)
If (xItemSubject = "re: " & xSubject) Or (InStr(xItemSubject, xSubject) > 0) Then
If Item.SentOn > xSendTime Then
With xMail
.ClearTaskFlag
.ReminderSet = False
.Save
End With
End If
End If
End If
Next i
End Sub
'Reminder
Private Sub Application_Reminder(ByVal Item As Object)
Dim xPrompt As String
Dim xResponse As Integer
Dim xFollowUpMail As Outlook.MailItem
Dim xRcp As Recipient
On Error Resume Next
'Resend
If (Item.Class <> olMail) Then Exit Sub
xPrompt = "You haven't yet recieved the reply of " & Chr(34) & Item.Subject & Chr(34) & " within your expected time. Do you want to send a follow-up notification email?"
xResponse = MsgBox(xPrompt, vbYesNo + vbQuestion, "Kutools for Outlook")
If xResponse = vbNo Then Exit Sub
Set xFollowUpMail = Application.CreateItem(olMailItem)
With xFollowUpMail
For Each xRcp In Item.Recipients
.Recipients.Add (xRcp.Address)
Next
.Recipients.ResolveAll
.Subject = "Follow Up: " & Chr(34) & Item.Subject & Chr(34)
.Body = "Please respond to my email " & Chr(34) & Item.Subject & Chr(34) & "as soon as possible"
.Attachments.Add Item
.Display
End With
End Sub
5. Save the code, then go back to the main interface, click File > Options and in the Outlook Options window, click Trust Center in the left pane, and click Trust Center Settings to enable the Trust Center window. Click Macro Settings and make sure that the Enable all macros (not recommended; potentially dangerous code can run) option is selected in the right section. Click OK > OK.
6. Now if the sent email which has been set with a reminder receives no response when the specified time arrives, a popping dialog pops out to remind you whether to resend an email to make a notification.
7. Click Yes, a message window pops out and attaches the previous email, and you can reedit the body and click Send to resend the email..
8. Click No, the reminder will be deleted.
Note: If the email has been replied before the specified time, the reminder will be removed by VBA.
Kutools for Outlook - Brings 100 Advanced Features to Outlook, and Make Work Much Easier!
- Auto CC/BCC by rules when sending email; Auto Forward Multiple Emails by custom; Auto Reply without exchange server, and more automatic features...
- BCC Warning - show message when you try to reply all if your mail address is in the BCC list; Remind When Missing Attachments, and more remind features...
- Reply (All) With All Attachments in the mail conversation; Reply Many Emails in seconds; Auto Add Greeting when reply; Add Date into subject...
- Attachment Tools: Manage All Attachments in All Mails, Auto Detach, Compress All, Rename All, Save All... Quick Report, Count Selected Mails...
- Powerful Junk Emails by custom; Remove Duplicate Mails and Contacts... Enable you to do smarter, faster and better in Outlook.

