Uneori, este posibil să doriți să capturați în serie toate e-mailurile dintr-o anumită conversație și apoi să le exportați în grup în folderul local ca fișiere text. Acest articol vă va învăța cum să-l obțineți în timp util.
Din anumite motive, poate fi necesar să exportați toate e-mailurile dintr-o anumită conversație pe unitatea dvs. locală. Dacă faceți acest lucru manual, și anume găsirea și salvarea una câte una, va fi o sarcină obositoare și anevoioasă. Prin urmare, ar fi bine să căutați o altă metodă mai rapidă, cum ar fi următoarea. Va folosi o bucată de cod VBA pentru a o obține fără a transpira.
Export în lot toate e-mailurile dintr-o conversație ca fișiere text
- De la bun început, lansați aplicația Outlook.
- Apoi apăsați butoanele tastei „Alt + F11” pentru a accesa editorul Outlook VBA.
- Ulterior, în noua fereastră, trebuie să deschideți un modul care nu este utilizat sau să introduceți direct un modul nou.
- Apoi ar trebui să copiați și să lipiți următoarele coduri VBA în acest modul.
Public strFilePath, strFileName As String
Sub ExportMailsInConversationAsTXT()
Dim objSelectedMail As Outlook.MailItem
Dim objConversation As Outlook.Conversation
Dim objMail As Outlook.MailItem
Set objSelectedMail = ActiveExplorer.Selection.Item(1)
Set objConversation = objSelectedMail.GetConversation
If Not (objConversation Is Nothing) Then
'Get all root items in this conversation
For Each objMail In objConversation.GetRootItems
strFileName = objMail.Subject
'Remove the unsupported characters in email subject
strFileName = Replace(strFileName, "/", " ")
strFileName = Replace(strFileName, "\", " ")
strFileName = Replace(strFileName, ":", "")
strFileName = Replace(strFileName, "?", " ")
strFileName = Replace(strFileName, Chr(34), " ")
strFileName = Format(objMail.ReceivedTime, "YYYY-MM-DD") & "_" & strFileName & ".txt"
'Export as Text files
'Change "E:\" to other local folder path as per your needs
strFilePath = "E:\" & strFileName
objMail.SaveAs strFilePath, OLTXT
'Process all children as well
Call ProcessChildren(objMail, objConversation)
Next
End If
MsgBox "Complete!", vbExclamation
End Sub
Sub ProcessChildren(objCurMail As Outlook.MailItem, objCurConversation As Outlook.Conversation)
Dim objItems As Outlook.SimpleItems
Dim objItem As Outlook.MailItem
Set objItems = objCurConversation.GetChildren(objCurMail)
If objItems.Count > 0 Then
For Each objItem In objItems
strFileName = objItem.Subject
strFileName = Replace(strFileName, "/", " ")
strFileName = Replace(strFileName, "\", " ")
strFileName = Replace(strFileName, ":", "")
strFileName = Replace(strFileName, "?", " ")
strFileName = Replace(strFileName, Chr(34), " ")
strFileName = Format(objItem.ReceivedTime, "yyyy-mm-dd") & "_" & strFileName & ".txt"
strFilePath = "E:\" & strFileName
objItem.SaveAs strFilePath, OLTXT
'Process all children recursively
Call ProcessChildren(objItem, objCurConversation)
Next
End If
End Sub
- După aceea, puteți adăuga noul proiect VBA la Bara de instrumente Acces rapid, ca de obicei.
- Mai târziu, asigurați-vă că nivelul de securitate al macrocomenzii Outlook este scăzut.
- În cele din urmă, ai putea încerca.
- În primul rând, selectați un e-mail.
- Apoi faceți clic pe butonul macro nou din Bara de instrumente Acces rapid.
- Când primiți mesajul „Complet”, puteți deschide folderul local predefinit, în care veți vedea e-mailurile în format „TXT”.
Sfaturi pentru restaurarea datelor PST după corupție
Adesea, în Outlook, este posibil să întâmpinați diverse erori Outlook, dintre care unele pot fi extrem de grave, astfel încât să conducă direct la corupția PST. În acel moment, trebuie să luați măsuri pentru repara PST fișier pentru a găsi datele dvs. valoroase. În acest caz, puteți recurge la un instrument de renume și bine dovedit, cum ar fi DataNumen Outlook Repair.
Introducerea autorului:
Shirley Zhang este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv recupera sql server și produse software de reparații Outlook. Pentru mai multe informații vizitați www.datanumen.com
