A algunos usuarios les gustaría extraer rápidamente todos los destinatarios de varios archivos de mensajes de Outlook guardados desde correos electrónicos de Outlook. Ahora, esta post mirará esto para compartir un enfoque rápido.
Para extraer los destinatarios de un solo archivo de mensaje de Outlook, puede hacer doble clic para abrirlo y luego copiar los destinatarios en la ventana de Mensaje abierta. Pero, si necesita manejar un lote de archivos de mensajes de Outlook, el método manual no es lo suficientemente eficiente. Por lo tanto, puede buscar una forma mucho más eficiente. Aquí te presentaremos a uno de ellos. Siga leyendo para conocer sus detalles.
Extraer todos los destinatarios de varios archivos de mensajes de Outlook (.msg)
- Porque comotart, obtenga acceso al editor de Outlook VBA de acuerdo con "Cómo ejecutar código VBA en su Outlook".
- A continuación, copie y pegue el siguiente código VBA en un módulo vacío.
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
- Luego, mueva el cursor en la primera subrutina.
- Posteriormente, haga clic en el botón "Ejecutar" o presione la tecla "F5".
- Luego, en el cuadro de diálogo emergente, seleccione la carpeta de Windows que contiene los archivos de origen del mensaje de Outlook (.msg).
- Después de seleccionar, haga clic en "Aceptar" para que la macro continúe ejecutándose.
- Cuando finalice la macro, aparecerá un mensaje que enumera todas las direcciones de correo electrónico de los destinatarios extraídos, como se muestra en la siguiente captura de pantalla.
Proteja sus datos de Outlook de peligros
Es cierto que los datos de Outlook son propensos a la corrupción. Por lo tanto, es una tarea bastante onerosa proteger los datos de Outlook. Requiere que persevere en realizar copias de seguridad periódicas de los datos de Outlook. Además, si es posible, es prudente y recomendable preparar un Outlook experimentado y profesional. Reparación de PST herramienta, como DataNumen Outlook Repair, para que pueda obtener un rescate inmediato y oportuno en caso de corrupción de Outlook.
Introducción del autor:
Shirley Zhang es experta en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo recuperar Sql Server y productos de software de reparación de Outlook. Para más información visite www.datanumen.com


