Den här artikeln lär dig ett snabbt trick med hjälp av VBA för att låta Outlook automatiskt be dig om att skicka ett e-postmeddelande när du inte har fått svaret från ett specifikt e-postmeddelande inom en viss tid.
Ibland, för de mycket viktiga e-postmeddelandena, kommer du definitivt att se fram emot dess svar. Med andra ord måste du hoppas att mottagaren kan svara dig så snart som möjligt. Annars, så länge du ännu inte har fått svaret inom din förväntade tid, skickar du ett e-postmeddelande för uppföljning till mottagaren igen. Därför, som svar på detta krav, kommer vi här att introducera en metod som använder VBA för att få Outlook att automatiskt varna och uppmana dig i ett sådant fall. Läs vidare för att få detaljerade steg och koder.

Få ett meddelande om du inte får svaret på en viss e-post inom förväntad tid
- Från början, start din Outlook.
- Då måste du ställa in en specifik påminnelsestid för det specifika e-postmeddelandet.
- Högerklicka först på det specifika e-postmeddelandet.
- Välj sedan "Uppföljning"> "Lägg till påminnelse".
- I dialogrutan kan du ställa in påminnelsetiden samma som den specifika tid inom vilken du vill få svaret.
- Tryck därefter på “Alt + F11” -knapparna för att komma åt Outlook VBA-redigeraren.
- Nästa i det nya fönstret öppnar du projektet “ThisOutlookSession” och kopierar följande koder till det.
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
- Underteckna därefter den här koden.
- Senare ändra Outlook-makroinställningen för att tillåta digitalt signerade makron.
- Så småningom restart Outlook för att aktivera det nya makrot. Från och med nu fungerar Outlook enligt följande:
- Om du har fått svaret från det specifika e-postmeddelandet innan påminnelsen dyker upp rensar Outlook flaggan automatiskt och inaktiverar påminnelsen.
- Om du inte har fått svaret när påminnelsen avfyras kommer Outlook att fråga dig om du ska skicka ett uppföljningsmeddelande via e-post. Om du väljer “Ja” skickas e-postmeddelandet. Om du väljer "Nej" försvinner meddelandet direkt.
Avgör irriterande Outlook-problem
Eftersom Outlook är felbenägen, för att förhindra Outlook korruption, skulle du inte bara lita på inkorgsverktyget, Scanpst.exe. Du bör förbereda ett annat kraftfullt och ansedd reparationsverktyg, t.ex. DataNumen Outlook Repair, som kan göra sig av med de irriterande problemen som Scanpst.exe inte kan lösa.
Författarintroduktion:
Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive sql korruption och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com


