Slik batchmerker du alle e-poster som lest i alle Outlook-mapper med VBA

Flere brukere lengter etter en løsning for å batchmerke alle e-poster som lest i alle Outlook-mapper. I denne artikkelen vil vi introdusere en slik metode for deg.  

Som vi alle vet, er det enkelt å merke alle e-poster i en mappe som lest. Bare velg og høyreklikk på mappen og velg deretter "Merk alle som lest" i hurtigmenyen. Imidlertid, hvis det er flere mapper som har uleste e-poster, må du utføre på mappene én etter én. Det er for plagsomt. Derfor vil vi her dele deg en mye mer effektiv måte, som lar deg realisere det i bulk.

Batchmerk alle e-poster som lest i alle Outlook-mapper

  1. Til start med, start Outlook-applikasjonen.
  2. Trykk deretter "Alt + F11" for å få tilgang til Outlook VBA-editor.
  3. Deretter, i "Microsoft Visual Basic for Applications"-vinduet, kopierer du koden nedenfor til en ubrukt modul.
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-kode - Batchmerk alle e-poster som lest i alle Outlook-mapper

  1. Etterpå setter du markøren inn i den første subrutinen.
  2. Deretter trykker du på "F5"-tasten eller klikker på "Kjør"-ikonet i verktøylinjen.
  3. Til slutt, etter at makroen er fullført, kan du gå tilbake til e-postmappelisten.
  4. Der vil du se at alle uleste e-poster er merket som lest, som vist på skjermbildet.Alle e-poster er lest

Flykt fra miserable Outlook-datatap

Brukere kan ha akseptert et faktum at Word-dokumenter og Excel-arbeidsbøker lett kan bli ødelagt. Faktisk, i likhet med disse filene, er Outlook-datafilen også utsatt for skade. Derfor, hvis du er motvillig til å oppleve det, bør du ta noen handlinger. Det bør inkludere forholdsregler, som regelmessig sikkerhetskopiering og blokkering av all skadelig programvare eller virus, og noen hjelpetiltak, som å vite hvordan du starter reparasjonsverktøyet for innboks, scanpst og beholde et kraftig eksternt fikseverktøy, som f.eks DataNumen Outlook Repair.

Forfatterintroduksjon:

Shirley Zhang er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert reparere mdf og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med

Kommentarer er stengt.