Hur man snabbt extraherar alla mottagare från flera Outlook-meddelandefiler (.msg)

Vissa användare vill snabbt extrahera alla mottagare från flera Outlook-meddelandefiler som sparats från Outlook-e-postmeddelanden. Nu, den här sost kommer att titta på detta för att dela en snabb strategi.

För att extrahera mottagarna från en enda Outlook-meddelandefil kan du bara dubbelklicka för att öppna den och sedan kopiera mottagarna i det öppnade meddelandefönstret. Men om du behöver hantera en mängd Outlook-meddelandefiler är den manuella metoden inte tillräckligt effektiv. Således kan du leta efter ett mycket mer effektivt sätt. Här presenterar vi en sådan för dig. Läs vidare för att få detaljerna.

Extrahera alla mottagare från flera Outlook-meddelandefiler (.msg)

  1. För somtart, få tillgång till Outlook VBA-redigeraren enligt “Hur du kör VBA-kod i din Outlook".
  2. Kopiera sedan och klistra in följande VBA-kod i en tom modul.
Dim strRecipients As String

Sub ExtractRecipientsFromOutlookMSGFiles()
    Dim objShell, objWindowsFolder As Object
 
    strRecipients = ""
    'Select a Windows folder
    Set objShell = CreateObject("Shell.Application")
    Set objWindowsFolder = objShell.BrowseForFolder(0, "Select a Windows Folder:", 0, "")
 
    If Not objWindowsFolder Is Nothing Then
       Call ProcessWindowsFolders(objWindowsFolder.self.Path & "\")
       'Display a Message
       MsgBox "Recipients: " & vbCrLf & strRecipients, vbInformation + vbOKOnly
    End If
End Sub

Sub ProcessWindowsFolders(strFolderPath As String)
    Dim objFileSystem As Object
    Dim objFolder As Object
    Dim objFile As Object
    Dim objItem As Object
    Dim objMail As Outlook.MailItem
    Dim objRecipient As Outlook.Recipient
    Dim objSubfolder As Object

    Set objFileSystem = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFileSystem.GetFolder(strFolderPath)
 
    For Each objFile In objFolder.Files
        If objFileSystem.GetExtensionName(objFile) = "msg" Then
           Set objItem = Session.OpenSharedItem(objFile.Path)

           If TypeName(objItem) = "MailItem" Then
              Set objMail = objItem
              'Extract recipients' email addresses
              For Each objRecipient In objMail.Recipients
                  strRecipients = strRecipients & objRecipient.Address & vbCr
              Next
           End If
        End If
    Next
 
    'Process all subfolders recursively
    If objFolder.SubFolders.Count > 0 Then
       For Each objSubfolder In objFolder.SubFolders
           If ((objSubfolder.Attributes And 2) = 0) And ((objSubfolder.Attributes And 4) = 0) Then
               Call ProcessWindowsFolders(objSubfolder.Path)
           End If
       Next
    End If
End Sub

VBA-kod - extrahera alla mottagare från flera Outlook-meddelandefiler (.msg)

  1. Flytta sedan markören i den första underrutinen.
  2. Klicka sedan på "Kör" -knappen eller tryck på "F5" -tangenten.
  3. I popup-dialogrutan väljer du sedan Windows-mappen som innehåller källfilerna för Outlook-meddelande (.msg).Välj Windows-mapp
  4. När du har valt klickar du på “OK” för att låta makrot fortsätta att köras.
  5. När makrot är klart kommer ett meddelande med alla extraherade mottagares e-postadresser att visas, som visas i följande skärmdump.Extraherade mottagare

Skydda dina Outlook-data från Jeopardy

Outlook-data är visserligen utsatta för korruption. Därför är det en ganska betungande uppgift att skydda Outlook-data. Det kräver att du fortsätter att regelbundet säkerhetskopiera Outlook-data. Om möjligt är det också klokt och rekommenderas att förbereda en erfaren och professionell Outlook PST-reparation verktyg, som DataNumen Outlook Repair, så att du kan få omedelbar och snabb räddning i händelse av Outlook-korruption.

Författarintroduktion:

Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive återhämta Sql Server och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com

Kommentarer är stängda.