Noen ganger vil du kanskje batchfange alle e-postene i en bestemt samtale og deretter batcheksportere dem til lokal mappe som tekstfiler. Denne artikkelen vil lære deg hvordan du får det raskt.
Av en eller annen grunn kan det hende du må eksportere alle e-postene i en bestemt samtale til din lokale stasjon. Hvis du manuelt gjør dette, nemlig å finne og lagre en etter en, vil det være en kjedelig og strabasiøs oppgave. Derfor bør du søke en annen raskere metode, for eksempel den følgende. Den vil bruke et stykke VBA-kode for å få det uten å svette.
Batch-eksporter alle e-poster i en samtale som tekstfiler
- Start Outlook-applikasjonen helt i begynnelsen.
- Trykk deretter på "Alt + F11"-tastene for å få tilgang til Outlook VBA-editor.
- Deretter, i det nye vinduet, må du åpne en modul som ikke er i bruk eller sette inn en ny modul direkte.
- Deretter bør du kopiere og lime inn følgende VBA-koder i denne modulen.
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
- Etter det kan du legge til det nye VBA-prosjektet til Quick Access Toolbar som vanlig.
- Sørg senere for at Outlook-makrosikkerhetsnivået er lavt.
- Til slutt kan du prøve.
- Først velger du en e-post.
- Klikk deretter på den nye makroknappen i Hurtigtilgangsverktøylinjen.
- Når du får meldingen "Complete", kan du åpne den forhåndsdefinerte lokale mappen, der du vil se e-postene i "TXT"-format.
Tips for å gjenopprette PST-data etter korrupsjon
Ofte, i Outlook, kan du støte på forskjellige Outlook-feil, hvorav noen kan være ekstremt alvorlige, slik at de direkte fører til PST-korrupsjon. På det tidspunktet må du iverksette tiltak for å reparere PST fil for å finne tilbake dine verdifulle data. I dette tilfellet kan du bare gå tilbake til et anerkjent og velprøvd verktøy, som DataNumen Outlook Repair.
Forfatterintroduksjon:
Shirley Zhang er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert gjenopprette sql server og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med
