Kuinka eriä poistaa liitteitä vanhentuneista kalenterikohteista Outlookissa

Jos haluat poistaa Outlookin vanhentuneiden tapaamisten ja kokousten liitteet, voit lukea tämän artikkelin. Täällä esittelemme sinulle, kuinka toteuttaa se yhdellä kertaa.

Outlook-tiedostosi koon pienentämiseksi on erittäin suositeltavaa puhdistaa vanhat kohteet. Tämä voidaan toteuttaa sisäänrakennetulla "AutoArchive" -ominaisuudella, joka voi poistaa vanhat kohteet automaattisesti säännöllisin väliajoin. Jotkut käyttäjät haluavat kuitenkin vain poistaa vanhojen kohteiden liitteet vaikuttamatta itse tuotteisiin. Seuraavassa opetamme sinua poistamaan liitteet vanhoista kalenterikohteista.

Erä Poista liitteet vanhoista kalenterikohteista Outlookissa

Erä Poista liitteet vanhentuneista kalenterikohteista

  1. Aluksi avaa Outlook VBA -editori valitsemalla ”Alt + F11”.
  2. Kopioi sitten VBA-koodi “Microsoft Visual Basic for Applications” -ikkunaan moduuliin.
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-koodi - erä Poista liitteet vanhentuneista kalenterikohteista

  1. Napsauta sen jälkeen "BatchDeleteAttachmentsOfOldCalendarItems" -makrossa.
  2. Paina lopuksi “F5” -näppäintä tämän makron suorittamiseksi.
  3. Kun makro on valmis, voit tarkistaa kaikki Outlook-kalenterit.
  4. Outlookin on oltava poistanut kaikki yli kahden kuukauden ikäisten kalenterikohteiden liitteet.Poistetut liitteet vanhentuneista kalenterikohteista

Selviytyä vioittuneista Outlook-tiedostoista

Oletko koskaan kohdannut Outlookin korruptiota? Kuinka hävität sen yleensä? Useimmiten kokeilet ensin postilaatikon korjaustyökalua - scanpst. Mutta vakavien PST-vahinkojen sattuessa sisäänrakennettu apuohjelma ei voi auttaa sinua. Siksi on suositeltavaa pitää kokeneempi ja merkittävämpi kolmannen osapuolen työkalu lähellä, kuten DataNumen Outlook Repair.

Tekijän esittely:

Shirley Zhang on tietojen palauttamisen asiantuntija DataNumen, Inc., joka on maailman johtava tietojen palautustekniikoissa, mukaan lukien sql korjaus ja Outlookin korjausohjelmistotuotteet. Lisätietoja osoitteessa www.datanumen.com

Kommenttien lisääminen on estetty.