Как получить уведомление, если не получен ответ на определенное электронное письмо в течение ожидаемого времени

Поделись сейчас:

Эта статья научит вас быстрому трюку с использованием VBA, позволяющему Outlook автоматически предлагать вам отправлять уведомления по электронной почте, если вы не получили ответ на определенное электронное письмо в течение определенного времени.

Иногда на жизненно важные электронные письма вы определенно будете ждать ответов. Другими словами, вы должны надеяться, что получатель сможет ответить вам как можно скорее. В противном случае, если вы еще не получили ответ в течение ожидаемого времени, вы снова отправите получателю уведомление по электронной почте. Поэтому, в ответ на это требование, здесь мы представим метод, который использует VBA, чтобы Outlook автоматически предупреждал и запрашивал вас в таком случае. Читайте дальше, чтобы получить подробные шаги и коды.

 Получить уведомление, если не получен ответ на определенное электронное письмо

Получите уведомление, если не получите ответ на определенное электронное письмо в течение ожидаемого времени

  1. В самом начале сtarт ваш Outlook.
  2. Затем вам нужно установить определенное время напоминания для определенного электронного письма.
  • Во-первых, щелкните правой кнопкой мыши на конкретном электронном письме.
  • Затем выберите «Последующие действия» > «Добавить напоминание».Добавить напоминание к конкретному электронному письму
  • В диалоговом окне вы можете установить время напоминания так же, как конкретное время, в течение которого вы хотите получить ответ.Установить конкретное напоминание
  1. После этого нажмите клавиши «Alt + F11», чтобы получить доступ к редактору Outlook VBA.
  2. Далее в новом окне откройте проект «ThisOutlookSession» и скопируйте в него следующие коды.
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

Коды VBA - получите уведомление, если не получите ответ на определенное электронное письмо в течение ожидаемого времени

  1. Затем подпишите этот код.
  2. Позже измените параметр макроса Outlook, чтобы разрешить макросы с цифровой подписью.
  3. В конце концов резtar• Outlook, чтобы активировать новый макрос. Отныне Outlook будет работать следующим образом:
  • Если вы получили ответ на определенное электронное письмо до того, как появится всплывающее напоминание, Outlook автоматически снимет флажок и отключит напоминание.
  • Если вы не получили ответ, когда срабатывает напоминание, Outlook спросит вас, следует ли отправить дополнительное уведомление по электронной почте. Если вы выберете «Да», письмо будет отправлено. Если выбрать «Нет», подсказка сразу исчезнет.

Устранение раздражающих проблем с Outlook

Поскольку Outlook подвержен ошибкам, чтобы предотвратить Повреждение Outlook, вам лучше не полагаться только на инструмент для входящих сообщений, Scanpst.exe. Вы должны подготовить другой мощный и авторитетный инструмент для ремонта, такой как DataNumen Outlook Repair, который может устранить надоедливые проблемы, которые Scanpst.exe не может решить.

Об авторе:

Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая sql-повреждение и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

Поделись сейчас:

Комментарии закрыты.