Некоторые пользователи хотели бы быстро извлечь всех получателей из нескольких файлов сообщений Outlook, сохраненных из электронных писем Outlook. Теперь этот пost посмотрю на это, чтобы поделиться быстрым подходом.
Чтобы извлечь получателей из одного файла сообщения Outlook, вы можете просто дважды щелкнуть, чтобы открыть его, а затем скопировать получателей в открывшемся окне сообщения. Но если вам нужно работать с пакетом файлов сообщений Outlook, ручной метод недостаточно эффективен. Таким образом, вы можете искать гораздо более эффективный способ. Здесь мы познакомим вас с таким. Читайте дальше, чтобы узнать подробности.
Извлечь всех получателей из нескольких файлов сообщений Outlook (.msg)
- Для насtart, получите доступ к редактору Outlook VBA в соответствии с «Как запустить код VBA в Outlook».
- Затем скопируйте и вставьте следующий код VBA в пустой модуль.
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
- Затем переместите курсор в первую подпрограмму.
- Затем нажмите кнопку «Выполнить» или нажмите клавишу «F5».
- Затем во всплывающем диалоговом окне выберите папку Windows, содержащую исходные файлы сообщений Outlook (.msg).
- После выбора нажмите «ОК», чтобы макрос продолжил работу.
- Когда макрос завершится, появится сообщение со списком всех извлеченных адресов электронной почты получателей, как показано на следующем снимке экрана.
Защитите свои данные Outlook от опасности
Данные Outlook, по общему признанию, подвержены повреждению. Следовательно, защита данных Outlook — довольно обременительная задача. Это требует от вас настойчивости в создании регулярных резервных копий данных Outlook. Кроме того, если возможно, разумно и рекомендуется подготовить опытного и профессионального специалиста Outlook. ремонт PST инструмент, как DataNumen Outlook Repair, чтобы вы могли получить немедленное и своевременное спасение в случае повреждения Outlook.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая оправляться Sql Server и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com


