Come ricevere una notifica se non si riceve la risposta di un'e-mail specifica entro il tempo previsto

Condividi ora:

Questo articolo ti insegnerà un rapido trucco utilizzando VBA per consentire a Outlook di richiedere automaticamente se inviare un'e-mail di notifica quando non hai ricevuto la risposta di un'e-mail specifica entro un tempo specifico.

A volte, per le e-mail di vitale importanza, non vedrai l'ora di ricevere le sue risposte. In altre parole, devi sperare che il destinatario possa risponderti il ​​prima possibile. In caso contrario, se non hai ancora ricevuto la risposta entro il tempo previsto, invierai nuovamente un'e-mail di notifica di follow-up al destinatario. Pertanto, in risposta a questo requisito, qui introdurremo un metodo che utilizza VBA per fare in modo che Outlook avvisi automaticamente e ti chieda in tal caso. Continua a leggere per ottenere i passaggi e i codici elaborati.

 Ricevi una notifica se non ricevi la risposta di un'e-mail specifica

Ricevi una notifica se non ricevi la risposta di un'e-mail specifica entro il tempo previsto

  1. All'inizio, start il tuo Outlook.
  2. Quindi è necessario impostare un orario di promemoria specifico per l'e-mail specifica.
  • Innanzitutto, fai clic con il pulsante destro del mouse sull'e-mail specifica.
  • Quindi seleziona "Follow Up" > "Aggiungi promemoria".Aggiungi promemoria all'e-mail specifica
  • Nella finestra di dialogo è possibile impostare l'ora del promemoria uguale all'ora specifica entro la quale si desidera ricevere la risposta.Imposta un promemoria specifico
  1. Successivamente, premi i pulsanti "Alt + F11" per accedere all'editor VBA di Outlook.
  2. Avanti nella nuova finestra, apri il progetto "ThisOutlookSession" e copia i seguenti codici al suo interno.
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

Codici VBA: ricevi una notifica se non ricevi la risposta di un'e-mail specifica entro il tempo previsto

  1. Successivamente, firmare questo codice.
  2. Modificare successivamente l'impostazione della macro di Outlook per consentire le macro firmate digitalmente.
  3. Alla fine ristart Outlook per attivare la nuova macro. D'ora in poi, Outlook funzionerà come segue:
  • Se hai ricevuto la risposta dell'e-mail specifica prima che venga visualizzato il promemoria, Outlook cancellerà automaticamente il contrassegno e disabiliterà il promemoria.
  • Se non hai ricevuto la risposta quando viene attivato il promemoria, Outlook ti chiederà se inviare un'e-mail di notifica di follow-up. Selezionando "Sì", l'e-mail verrà inviata. Se selezioni "No", la richiesta scomparirà immediatamente.

Risolvi i fastidiosi problemi di Outlook

Poiché Outlook è soggetto a errori, al fine di prevenire Corruzione di Outlook, faresti meglio a non affidarti solo allo strumento Posta in arrivo, Scanpst.exe. Dovresti preparare un altro strumento di riparazione potente e affidabile, come ad esempio DataNumen Outlook Repair, che può eliminare i fastidiosi problemi che Scanpst.exe non può risolvere.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui corruzione sql e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.