Как пакетно пометить все электронные письма как прочитанные во всех папках Outlook с помощью VBA

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

Несколько пользователей жаждут решения для пакетной пометки всех электронных писем как прочитанных во всех папках Outlook. В этой статье мы познакомим вас с таким методом.  

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

Пакетная пометка всех писем как прочитанных во всех папках Outlook

  1. К starт с, запустите приложение Outlook.
  2. Затем нажмите «Alt + F11», чтобы открыть редактор Outlook VBA.
  3. Затем в окне «Microsoft Visual Basic для приложений» скопируйте приведенный ниже код в неиспользуемый модуль.
Sub MarkAllItemsAsRead()
    Dim objStores As Outlook.Stores
    Dim objStore As Outlook.Store
    Dim objOutlookFile As Outlook.Folder
    Dim objFolder As Outlook.Folder
 
    'Process all Outlook files
    Set objStores = Outlook.Application.Session.Stores
  
    For Each objStore In objStores
        Set objOutlookFile = objStore.GetRootFolder
 
        For Each objFolder In objOutlookFile.Folders
            'Process mail folders
            If objFolder.DefaultItemType = olMailItem Then
               Call ProcessFolders(objFolder)
            End If
        Next
    Next
End Sub

Sub ProcessFolders(ByVal objCurFolder As Outlook.Folder)
    Dim objUnreadItems As Outlook.Items
    Dim i As Integer
    Dim objItem As Object
    Dim objSubFolder As Outlook.Folder
 
    Set objUnreadItems = objCurFolder.Items.Restrict("[Unread]=True")
 
    'Mark all unread emails as read
    For i = 1 To objUnreadItems.Count
        Set objItem = objUnreadItems.Item(i)
        objItem.UnRead = False
        objItem.Save
    Next
 
    'Process subfolders recursively
    If objCurFolder.Folders.Count > 0 Then
       For Each objSubFolder In objCurFolder.Folders
           Call ProcessFolders(objSubFolder)
       Next
    End If
End Sub

Код VBA - пакетная пометка всех писем как прочитанных во всех папках Outlook

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

Побег от несчастной потери данных Outlook

Пользователи, возможно, приняли тот факт, что документы Word и книги Excel могут быть легко повреждены. На самом деле, как и эти файлы, файл данных Outlook также подвержен повреждениям. Следовательно, если вы не хотите испытывать это, вы должны предпринять некоторые действия. Он должен включать меры предосторожности, такие как регулярное резервное копирование и блокирование всех вредоносных программ или вирусов, а также некоторые меры по оказанию помощи, такие как знание того, как запустить инструмент восстановления папки «Входящие». Скэнпст и наличие мощного внешнего инструмента исправления, такого как DataNumen Outlook Repair.

Об авторе:

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

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

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