W tym artykule nauczysz się szybkiej sztuczki za pomocą VBA, aby program Outlook automatycznie pytał, czy wysłać wiadomość e-mail z powiadomieniem, gdy nie otrzymałeś odpowiedzi na określoną wiadomość e-mail w określonym czasie.
Czasami w przypadku niezwykle ważnych e-maili na pewno nie możesz się doczekać odpowiedzi. Innymi słowy, musisz mieć nadzieję, że odbiorca będzie mógł odpowiedzieć tak szybko, jak to możliwe. W przeciwnym razie, o ile nie otrzymałeś jeszcze odpowiedzi w oczekiwanym czasie, ponownie wyślesz wiadomość e-mail z powiadomieniem do odbiorcy. Dlatego w odpowiedzi na to wymaganie wprowadzimy tutaj metodę, która wykorzystuje VBA, aby program Outlook automatycznie ostrzegał i monitował w takim przypadku. Czytaj dalej, aby uzyskać szczegółowe instrukcje i kody.

Otrzymaj powiadomienie, jeśli nie otrzymasz odpowiedzi na określony e-mail w oczekiwanym czasie
- Na wstępie starTwój Outlook.
- Następnie musisz ustawić konkretny czas przypomnienia na konkretny e-mail.
- Po pierwsze, kliknij prawym przyciskiem myszy konkretny e-mail.
- Następnie wybierz „Kontynuuj” > „Dodaj przypomnienie”.
- W oknie dialogowym możesz ustawić czas przypomnienia taki sam, jak określony czas, w którym chcesz otrzymać jego odpowiedź.
- Następnie naciśnij przyciski klawiszy „Alt + F11”, aby uzyskać dostęp do edytora Outlook VBA.
- Następnie w nowym oknie otwórz projekt „ThisOutlookSession” i skopiuj do niego następujące kody.
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
- Następnie podpisz ten kod.
- Później zmień ustawienia makr programu Outlook, aby zezwolić na makra podpisane cyfrowo.
- Ostatecznie restart Outlook, aby aktywować nowe makro. Od teraz Outlook będzie działał w następujący sposób:
- Jeśli otrzymałeś odpowiedź na konkretną wiadomość e-mail przed wyświetleniem przypomnienia, program Outlook automatycznie wyczyści flagę i wyłączy przypomnienie.
- Jeśli nie otrzymałeś odpowiedzi po uruchomieniu przypomnienia, program Outlook zapyta, czy wysłać wiadomość e-mail z powiadomieniem uzupełniającym. Jeśli wybierzesz „Tak”, wiadomość e-mail zostanie wysłana. Jeśli wybierzesz „Nie”, monit natychmiast zniknie.
Rozwiąż irytujące problemy z programem Outlook
Ponieważ program Outlook jest podatny na błędy, aby temu zapobiec Uszkodzenie programu Outlooklepiej nie polegać tylko na narzędziu skrzynki odbiorczej, Scanpst.exe. Powinieneś przygotować inne potężne i renomowane narzędzie do naprawy, takie jak DataNumen Outlook Repair, który może pozbyć się irytujących problemów, których Scanpst.exe nie może rozwiązać.
Wprowadzenie autora:
Shirley Zhang jest ekspertem w dziedzinie odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym sql korupcja i oprogramowanie do naprawy programu Outlook. po więcej informacji odwiedź www.datanumen.com


