Jak dávkově odebrat přílohy ze zastaralých položek kalendáře v aplikaci Outlook

Sdílej nyní:

Pokud chcete odebrat přílohy ze zastaralých schůzek a schůzek v Outlooku, můžete si přečíst tento článek. Zde vám představíme, jak to realizovat na jeden zátah.

Chcete-li zmenšit velikost souboru aplikace Outlook, je velmi vhodné vyčistit staré položky. Toho lze dosáhnout pomocí vestavěné funkce „AutoArchive“, která dokáže v pravidelných intervalech automaticky mazat staré položky. Někteří uživatelé však chtějí pouze odstranit přílohy ve starých položkách, aniž by to ovlivnilo samotné položky. V následujícím textu vás naučíme hromadně odstraňovat přílohy ze starých položek kalendáře.

Dávkové odstranění příloh ze starých položek kalendáře v aplikaci Outlook

Dávkové odstranění příloh ze zastaralých položek kalendáře

  1. Chcete-li začít, otevřete editor Outlook VBA pomocí „Alt + F11“.
  2. Poté v okně „Microsoft Visual Basic for Applications“ zkopírujte kód VBA do modulu.
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

Kód VBA - Dávkové odstranění příloh ze zastaralých položek kalendáře

  1. Poté klikněte na makro „BatchDeleteAttachmentsOfOldCalendarItems“.
  2. Nakonec toto makro spusťte stisknutím klávesy „F5“.
  3. Po dokončení makra můžete zkontrolovat všechny své kalendáře aplikace Outlook.
  4. Aplikace Outlook musí odstranit všechny přílohy položek kalendáře, které jsou starší než 2 měsíce.Odebrány přílohy ze zastaralých položek kalendáře

Vypořádejte se s poškozenými soubory aplikace Outlook

Setkali jste se někdy s poškozením Outlooku? Jak to obvykle likvidujete? Mnohem častěji byste nejprve vyzkoušeli nástroj na opravu doručené pošty – scanpst. Ale v případě vážného poškození PST vám vestavěný nástroj nemůže pomoci. Proto se doporučuje mít v blízkosti zkušenější a pozoruhodnější nástroj třetí strany, jako je např DataNumen Outlook Repair.

Úvod autora:

Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně oprava sql a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com

Sdílej nyní:

Komentáře jsou uzavřeny.