Hur man tar bort bilagor från föråldrade kalenderobjekt i Outlook

Om du vill ta bort bilagor från föråldrade möten och möten i Outlook kan du läsa den här artikeln. Här presenterar vi dig hur du kan förverkliga det på en gång.

För att minska storleken på din Outlook-fil är det mycket lämpligt att rensa gamla objekt. Detta kan realiseras med den inbyggda ”AutoArchive” -funktionen, som kan radera de gamla objekten automatiskt med jämna mellanrum. Vissa användare vill dock bara ta bort bilagorna i de gamla objekten utan att påverka själva objekten. I det följande lär vi dig att massvis ta bort bilagor från gamla kalenderobjekt.

Batch Ta bort bilagor från gamla kalenderobjekt i din Outlook

Batch Ta bort bilagor från föråldrade kalenderobjekt

  1. Till att börja med, öppna Outlook VBA-redigeraren med "Alt + F11".
  2. I fönstret “Microsoft Visual Basic for Applications” kopierar du sedan VBA-koden till en modul.
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

VBA-kod - Batch Ta bort bilagor från föråldrade kalenderobjekt

  1. Klicka därefter i ”BatchDeleteAttachmentsOfOldCalendarItems” makro.
  2. I slutändan trycker du på knappen “F5” för att köra detta makro.
  3. När makrot är klart kan du kontrollera alla dina Outlook-kalendrar.
  4. Outlook måste ha raderat alla bilagor till kalenderobjekten som är mer än två månader gamla.Bifogade bilagor från föråldrade kalenderobjekt har tagits bort

Hantera korrupta Outlook-filer

Har du någonsin stött på korruption i Outlook? Hur kasserar du det vanligtvis? Oftare än inte skulle du först prova reparationsverktyget för inkorgen - Scanpst. Men i händelse av allvarlig PST-skada kan det inbyggda verktyget inte hjälpa dig. Således föreslås det att hålla ett mer erfaret och anmärkningsvärt verktyg från tredje part i närheten, till exempel DataNumen Outlook Repair.

Författarintroduktion:

Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive sql reparation och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com

Kommentarer är stängda.