Comment supprimer par lots les pièces jointes des éléments de calendrier obsolètes dans votre Outlook

Partage maintenant:

Si vous souhaitez supprimer les pièces jointes des rendez-vous et réunions obsolètes dans votre Outlook, vous pouvez lire cet article. Nous allons ici vous présenter comment le réaliser en une seule fois.

Pour réduire la taille de votre fichier Outlook, il est fortement conseillé de nettoyer les anciens éléments. Cela peut être réalisé par la fonction intégrée "AutoArchive", qui peut supprimer automatiquement les anciens éléments à intervalles réguliers. Cependant, certains utilisateurs souhaitent simplement supprimer les pièces jointes des anciens éléments sans affecter les éléments eux-mêmes. Dans ce qui suit, nous vous apprendrons à supprimer en bloc les pièces jointes des anciens éléments de calendrier.

Supprimer par lots les pièces jointes des anciens éléments de calendrier dans votre Outlook

Supprimer par lots les pièces jointes des éléments de calendrier obsolètes

  1. Pour commencer, accédez à l'éditeur Outlook VBA par "Alt + F11".
  2. Ensuite, dans la fenêtre "Microsoft Visual Basic pour Applications", copiez le code VBA dans un module.
Sub BatchDeleteAttachmentsOfOldCalendarItems()
    Dim objOutlookFile As Outlook.Folder
    Dim objFolder As Outlook.Folder
 
    'Change to your own Outlook file
    Set objOutlookFile = Outlook.Application.Session.Folders("John Smith")
 
    For Each objFolder In objOutlookFile.Folders
        If objFolder.DefaultItemType = olAppointmentItem Then
           Call LoopCalendars(objFolder)
        End If
    Next
End Sub

Sub LoopCalendars(ByVal objCalendar As Outlook.Folder)
    Dim i, n As Long
    Dim objCalendarItem As Outlook.AppointmentItem
    Dim nDateDiff As Integer
    Dim objAttachments As Outlook.Attachments
    Dim objSubCalendar As Outlook.Folder
 
    For i = objCalendar.Items.Count To 1 Step -1
        Set objCalendarItem = objCalendar.Items(i)
 
        'Remove attachments from items that are more than 2 months old
        'Change the datediff as per your needs
        nDateDiff = DateDiff("m", objCalendarItem.End, Now) '=> "m" refers to month; "d" for day; "y" for year
        If nDateDiff > 2 Then
           Set objAttachments = objCalendarItem.Attachments
           If objAttachments.Count > 0 Then
              For n = objAttachments.Count To 1 Step -1
                  objAttachments(n).Delete
              Next
           End If
           objCalendarItem.Save
        End If
    Next

    'Process all subfolders recursively
    If objCalendar.Folders.Count > 0 Then
       For Each objSubCalendar In objCalendar.Folders
           Call LoopCalendars(objSubCalendar)
       Next
    End If
End Sub

Code VBA - Supprimer par lots les pièces jointes des éléments de calendrier obsolètes

  1. Ensuite, cliquez sur la macro "BatchDeleteAttachmentsOfOldCalendarItems".
  2. Enfin, appuyez sur la touche "F5" pour exécuter cette macro.
  3. Une fois la macro terminée, vous pouvez vérifier tous vos calendriers Outlook.
  4. Outlook doit avoir supprimé toutes les pièces jointes des éléments de calendrier datant de plus de 2 mois.Suppression des pièces jointes des éléments de calendrier obsolètes

Faire face aux fichiers Outlook corrompus

Avez-vous déjà rencontré la corruption d'Outlook ? Comment vous en débarrassez-vous habituellement ? Le plus souvent, vous essayez d'abord l'outil de réparation de la boîte de réception - Scanpst. Mais, en cas de dommages graves au PST, l'utilitaire intégré ne peut pas vous aider. Ainsi, il est suggéré de garder à proximité un outil tiers plus expérimenté et remarquable, 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éparation sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.