Generate an alert in Outlook if I don't receive an email

If you set a filter to alert you when you receive a message, and possibly even move it to a special folder then you can also set a reminder to ask you, if you have received the email you need today. And you would have a visual indicator, if there is not an unread message.

OR depending on your outlook version, write a simple vba script to check that special folder for an unread message as a scheduled event. If there isn't one alert you.


Assuming you get any new message on a regular basis, you could use rules to check that a "got mail from xyz" has been set in the past 24 hours. Otherwise, the only alternative I see is a custom Outlook add-in (or some VBA macros) that set a timer which goes off every 5 (or whatever) minutes.


I think this should answer the question - I was looking for something similar, as I receive a lot of emails in my work from processes that run at specific times, and was looking for a way to keep track of anything that did not come to my inbox when supposed to.

Receive a Reminder When a Message Doesn't Arrive? (writen by Diane Poremsky)

Basically, it details on how to set a "run a script" rule that triggers a reminder when you don't get an email within a specified schedule.

The VB code to achieve this is the following:

Sub RemindNewMessages(Item As Outlook.MailItem)

Dim objInbox As Outlook.MAPIFolder
Dim intCount As Integer
Dim objVariant As Variant

Set objInbox = Session.GetDefaultFolder(olFolderInbox)

' Set the flag/reminder on newly arrived message
 With Item
    .MarkAsTask olMarkThisWeek
    .TaskDueDate = Now + 1
    .ReminderSet = True
    ' Reminder in one hour
    .ReminderTime = Now + 0.041
    .Categories = "Remind in 1 Hour"
    .Save
End With

Item.Save

' look for existing messages and remove the flag and reminder 
For intCount = objInbox.Items.Count To 1 Step -1
 Set objVariant = objInbox.Items.Item(intCount)

 If objVariant.MessageClass = "IPM.Note" Then
    If LCase(objVariant.Subject) = LCase(Item.Subject) And objVariant.SentOn < Item.SentOn Then
' clear flag and category
With objVariant
    .ClearTaskFlag
    .Categories = ""
    .Save
End With

'or just delete the older messages
   '  objVariant.Delete
     Else
    End If
 End If
Next

Set objInbox = Nothing
End Sub