Cet article vous apprendra une astuce rapide en utilisant VBA pour laisser Outlook vous demander automatiquement s'il faut envoyer un e-mail de notification lorsque vous n'avez pas reçu la réponse d'un e-mail spécifique dans un délai précis.
Parfois, pour les e-mails d'une importance vitale, vous attendez avec impatience ses réponses. En d'autres termes, vous devez espérer que le destinataire pourra vous répondre dans les plus brefs délais. Sinon, tant que vous n'avez pas encore reçu la réponse dans le délai prévu, vous enverrez à nouveau un e-mail de notification de suivi au destinataire. Par conséquent, en réponse à cette exigence, nous allons introduire ici une méthode qui utilise VBA pour qu'Outlook vous avertisse automatiquement et vous invite dans un tel cas. Lisez la suite pour obtenir les étapes et les codes élaborés.

Recevez une notification si vous ne recevez pas la réponse d'un e-mail spécifique dans le délai prévu
- Au tout début, start votre Outlook.
- Ensuite, vous devez définir une heure de rappel spécifique pour l'e-mail spécifique.
- Tout d'abord, faites un clic droit sur l'e-mail spécifique.
- Sélectionnez ensuite "Suivi" > "Ajouter un rappel".
- Dans la boîte de dialogue, vous pouvez définir l'heure de rappel identique à l'heure spécifique dans laquelle vous souhaitez recevoir sa réponse.
- Après cela, appuyez sur les touches "Alt + F11" pour accéder à l'éditeur Outlook VBA.
- Ensuite, dans la nouvelle fenêtre, ouvrez le projet "ThisOutlookSession" et copiez-y les codes suivants.
Public WithEvents objInboxItems As Outlook.Items
Private Sub Application_Startup()
Set objInboxItems = Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
'If receive the reply, clear the flag and remove the reminder
Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
Dim objSentItems As Outlook.Items
Dim objVariant As Variant
Dim i As Long
Dim strSubject As String
Dim dSendTime As String
Set objSentItems = Outlook.Application.Session.GetDefaultFolder(olFolderSentMail).Items
If Item.Class = olMail Then
For i = 1 To objSentItems.Count
If objSentItems.Item(i).Class = olMail Then
Set objVariant = objSentItems.Item(i)
strSubject = LCase(objVariant.Subject)
dSendTime = objVariant.SentOn
If LCase(Item.Subject) = "re: " & strSubject Or InStr(LCase(Item.Subject), strSubject) > 0 Then
If Item.SentOn > dSendTime Then
With objVariant
.ClearTaskFlag
.ReminderSet = False
.Save
End With
End If
End If
End If
Next i
End If
End Sub
'Get a prompt asking if to send a notification email
Private Sub Application_Reminder(ByVal Item As Object)
Dim strPrompt As String
Dim nResponse As Integer
Dim objFollowUpMail As Outlook.MailItem
'You can change the subject as per your real case
If (Item.Class = olMail) And (LCase(Item.Subject) = "datanumen outlook repair") Then
strPrompt = "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?"
nResponse = MsgBox(strPrompt, vbYesNo + vbQuestion, "Confirm to Send a Follow-Up Notification Email")
If nResponse = vbYes Then
Set objFollowUpMail = Application.CreateItem(olMailItem)
With objFollowUpMail
.To = Item.Recipients.Item(1).Address
.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 If
End If
End Sub
- Signez ensuite ce code.
- Modifiez ultérieurement le paramètre de macro Outlook pour autoriser les macros signées numériquement.
- Finalement restart Outlook pour activer la nouvelle macro. À partir de maintenant, Outlook fonctionnera comme suit :
- Si vous avez reçu la réponse de l'e-mail spécifique avant que son rappel n'apparaisse, Outlook effacera automatiquement l'indicateur et désactivera le rappel.
- Si vous n'avez pas reçu la réponse lorsque son rappel se déclenche, Outlook vous demandera si vous souhaitez envoyer un e-mail de notification de suivi. Si vous sélectionnez "Oui", l'e-mail sera envoyé. Si vous sélectionnez "Non", l'invite disparaîtra immédiatement.
Régler les problèmes Outlook ennuyeux
Comme Outlook est sujet aux erreurs, afin d'éviter Corruption d'Outlook, vous feriez mieux de ne pas compter uniquement sur l'outil de boîte de réception, Scanpst.exe. Vous devez préparer un autre outil de réparation puissant et réputé, tel que DataNumen Outlook Repair, qui peut éliminer les problèmes gênants que Scanpst.exe ne peut pas résoudre.
Introduction de l'auteur:
Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris corruption sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com


