Někdy můžete chtít hromadně zachytit všechny e-maily v konkrétní konverzaci a poté je hromadně exportovat do místní složky jako textové soubory. Tento článek vás naučí, jak jej získat v rychlém čase.
Z nějakého důvodu možná budete muset exportovat všechny e-maily v určité konverzaci na místní disk. Pokud to uděláte ručně, a to hledání a ukládání jednoho po druhém, bude to zdlouhavý a náročný úkol. Proto byste měli hledat jinou rychlejší metodu, například následující. K získání kódu použije část kódu VBA, aniž by se zapotil.
Dávkový export všech e-mailů v konverzaci jako textových souborů
- Hned na začátku spusťte aplikaci Outlook.
- Poté stiskněte klávesy „Alt + F11“ pro přístup k editoru Outlook VBA.
- Následně v novém okně musíte otevřít modul, který se nepoužívá, nebo přímo vložit nový modul.
- Dále byste měli zkopírovat a vložit následující kódy VBA do tohoto modulu.
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
- Poté můžete jako obvykle přidat nový projekt VBA na panel nástrojů Rychlý přístup.
- Později zajistěte nízkou úroveň zabezpečení maker aplikace Outlook.
- Nakonec můžete zkusit.
- Nejprve vyberte e-mail.
- Poté klikněte na tlačítko nového makra na panelu nástrojů Rychlý přístup.
- Když se zobrazí zpráva „Dokončeno“, můžete otevřít předdefinovanou místní složku, ve které uvidíte e-maily ve formátu „TXT“.
Tipy pro obnovení dat PST po poškození
V aplikaci Outlook se často můžete setkat s různými chybami aplikace Outlook, z nichž některé mohou být vážně závažné, takže přímo vedou k poškození PST. V té době musíte podniknout kroky opravit PST soubor, abyste našli svá cenná data. V takovém případě stačí použít renomovaný a osvědčený nástroj, jako je DataNumen Outlook Repair.
Úvod autora:
Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně zotavit se sql server a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com
