Как пакетно удалять вложения из устаревших элементов календаря в Outlook

Поделись сейчас:

Если вы хотите удалить вложения из устаревших встреч и собраний в Outlook, вы можете прочитать эту статью. Здесь мы познакомим вас, как реализовать это за один раз.

Чтобы уменьшить размер файла Outlook, настоятельно рекомендуется удалить старые элементы. Это может быть реализовано с помощью встроенной функции «Автоархив», которая может автоматически удалять старые элементы через равные промежутки времени. Однако некоторые пользователи просто хотят удалить вложения в старых элементах, не затрагивая сами элементы. Далее мы научим вас массово удалять вложения из старых элементов календаря.

Пакетное удаление вложений из старых элементов календаря в Outlook

Пакетное удаление вложений из устаревших элементов календаря

  1. Для начала откройте редактор Outlook VBA с помощью «Alt + F11».
  2. Затем в окне «Microsoft Visual Basic для приложений» скопируйте код VBA в модуль.
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 - пакетное удаление вложений из устаревших элементов календаря

  1. После этого щелкните макрос «Пакетное удаление вложений старых элементов календаря».
  2. В конце концов, нажмите кнопку «F5», чтобы запустить этот макрос.
  3. Когда макрос завершится, вы сможете проверить все свои календари Outlook.
  4. Outlook должен удалить все вложения элементов календаря старше 2 месяцев.Удалены вложения из устаревших элементов календаря

Как справиться с поврежденными файлами Outlook

Вы когда-нибудь сталкивались с повреждением Outlook? Как вы его обычно утилизируете? Чаще всего вы сначала пробовали бы инструмент восстановления папки «Входящие» — Скэнпст. Но в случае серьезного повреждения PST встроенная утилита вам не поможет. Таким образом, рекомендуется держать поблизости более опытный и замечательный сторонний инструмент, такой как DataNumen Outlook Repair.

Об авторе:

Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая ремонт sql и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

Поделись сейчас:

Комментарии закрыты.