Einige Benutzer möchten schnell alle Empfänger aus mehreren Outlook-Nachrichtendateien extrahieren, die aus Outlook-E-Mails gespeichert wurden. Nun, diese post Ich werde mir dies ansehen, um einen schnellen Ansatz zu teilen.
Um die Empfänger aus einer einzelnen Outlook-Nachrichtendatei zu extrahieren, doppelklicken Sie einfach darauf, um sie zu öffnen, und kopieren Sie die Empfänger in das geöffnete Nachrichtenfenster. Wenn Sie jedoch mit einem Stapel von Outlook-Nachrichtendateien arbeiten müssen, ist die manuelle Methode nicht effizient genug. Daher können Sie nach einem viel effizienteren Weg suchen. Hier stellen wir Ihnen einen solchen vor. Lesen Sie weiter, um Details zu erfahren.
Extrahieren Sie alle Empfänger aus mehreren Outlook-Nachrichtendateien (.msg)
- Für astart Zugriff auf den Outlook VBA-Editor gemäß „So führen Sie VBA-Code in Outlook aus".
- Kopieren Sie anschließend den folgenden VBA-Code und fügen Sie ihn in ein leeres Modul ein.
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
- Bewegen Sie dann den Cursor in der ersten Unterroutine.
- Klicken Sie anschließend auf die Schaltfläche „Ausführen“ oder drücken Sie die Taste „F5“.
- Wählen Sie dann im Popup-Dialogfeld den Windows-Ordner aus, der die Outlook-Quellnachrichtendateien (.msg) enthält.
- Klicken Sie nach der Auswahl auf "OK", damit das Makro weiter ausgeführt wird.
- Wenn das Makro beendet ist, wird eine Nachricht mit den E-Mail-Adressen aller extrahierten Empfänger angezeigt, wie im folgenden Screenshot gezeigt.
Schützen Sie Ihre Outlook-Daten vor Gefährdung
Outlook-Daten sind zugegebenermaßen anfällig für Korruption. Daher ist es eine ziemlich mühsame Aufgabe, Outlook-Daten zu schützen. Sie müssen weiterhin regelmäßig Backups für Outlook-Daten erstellen. Wenn möglich, ist es auch ratsam und empfehlenswert, einen erfahrenen und professionellen Ausblick zu erstellen PST-Reparatur Werkzeug, wie DataNumen Outlook Repair, damit Sie im Falle einer Outlook-Beschädigung sofort und rechtzeitig gerettet werden können.
Einführung des Autors:
Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich erholen Sql Server und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX


