Comment supprimer automatiquement les e-mails Outlook d'un expéditeur spécifique après des jours spécifiques

Partage maintenant:

Pour laisser votre Outlook supprimer automatiquement les e-mails d'un expéditeur spécifique à partir de jours spécifiques, vous pouvez lire cet article. Ici, nous allons vous montrer les étapes détaillées pour utiliser le code VBA pour l'obtenir.

En ce qui concerne la suppression automatique des e-mails, vous pouvez tout d'abord penser à la fonction "AutoArchive". Cependant, il ne peut pas filtrer les expéditeurs spécifiques lors de l'archivage automatique des e-mails. Par conséquent, par exemple, si vous souhaitez supprimer automatiquement les e-mails d'un expéditeur spécifique après x jours, vous devez utiliser les autres moyens, tels que le suivant.

Supprimer automatiquement les e-mails d'un expéditeur spécifique après X jours

  1. Au tout début, start votre application Outlook.
  2. Ensuite, déclenchez l'éditeur Outlook VBA selon "Comment exécuter le code VBA dans votre Outlook" .
  3. Ensuite, copiez le code VBA suivant dans le projet "ThisOutlookSession".
Public WithEvents objInboxItems As Outlook.Items

Private Sub Application_Startup()
    Set objInboxItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
 
    Call DeleteEmailsFromSpecificSenderAfterXDays
End Sub

Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
    Dim objMail As Outlook.MailItem
 
    If TypeOf Item Is MailItem Then
       Set objMail = Item
 
       'From the specific sender
       If objMail.SenderEmailAddress = "bob_black@datanumen.com" Then
          'Set expiry time - after 5 days
          objMail.ExpiryTime = objMail.ReceivedTime + 4
          objMail.Save
       End If
    End If
End Sub

Private Sub DeleteEmailsFromSpecificSenderAfterXDays()
    Dim strFilter As String
    Dim objExpiredItems As Outlook.Items
    Dim objExpiredMail As Outlook.MailItem
 
    strFilter = "[ExpiryTime] <= " & Chr(34) & Now & Chr(34)
 
    'Get all expired items
    Set objExpiredItems = objInboxItems.Restrict(strFilter)
 
    For i = objExpiredItems.Count To 1 Step -1
        If objExpiredItems(i).Class = olMail Then
           Set objExpiredMail = objExpiredItems(i)
 
           'Auto delete expired emails from the specific sender
           If objExpiredMail.SenderEmailAddress = "bob_black@datanumen.com" Then
              objExpiredMail.Delete
           End If
        End If
    Next
End Sub

Code VBA - Supprimer automatiquement les e-mails d'un expéditeur spécifique après des jours spécifiques

  1. Après cela, restart Outlook pour activer cette macro.
  2. Depuis lors, chaque fois qu'un nouvel e-mail de l'expéditeur spécifique arrive dans la boîte de réception, un délai d'expiration spécifique lui sera attribué - les jours spécifiques suivant sa réception.Heure d'expiration ajoutée automatiquement
  3. Ensuite, chaque fois que vous start Outlook, Outlook vérifiera et supprimera automatiquement les e-mails expirés de l'expéditeur spécifique.Suppression automatique des e-mails expirés d'un expéditeur spécifique

Restaurer les données Outlook après la corruption

Peut-être avez-vous rencontré une variété d'erreurs et de problèmes dans Outlook. Alors, avez-vous déjà été confronté à la corruption d'Outlook ? Par exemple, si vous quittez fréquemment Outlook de manière incorrecte, votre fichier PST a tendance à être endommagé. Généralement, dans un tel cas, vous pouvez choisir de récupérer les données Outlook à partir de sauvegardes. Ou vous pouvez soit utiliser outil de réparation de boîte de réception ou un outil externe fiable, tel que DataNumen Outlook Repair.

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 récupérer sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.