Como exportar em lote todos os e-mails em uma conversa como arquivos de texto via Outlook VBA

Compartilhe agora:

Às vezes, você pode querer capturar em lote todos os e-mails em uma conversa específica e, em seguida, exportá-los em lote para a pasta local como arquivos de texto. Este artigo ensinará como obtê-lo rapidamente.

Exportar em lote todos os e-mails em uma conversa como arquivos de texto via Outlook VBAPor algum motivo, pode ser necessário exportar todos os e-mails de uma determinada conversa para sua unidade local. Se você fizer isso manualmente, ou seja, localizar e salvar um por um, será uma tarefa tediosa e árdua. Portanto, é melhor você procurar outro método mais rápido, como o seguinte. Ele usará um pedaço de código VBA para obtê-lo sem suar a camisa.

Exportar em lote todos os e-mails em uma conversa como arquivos de texto

  1. No início, inicie seu aplicativo Outlook.
  2. Em seguida, pressione os botões de tecla “Alt + F11” para acessar o editor VBA do Outlook.
  3. Posteriormente, na nova janela, você precisa abrir um módulo que não está em uso ou inserir diretamente um novo módulo.
  4. Em seguida, você deve copiar e colar os seguintes códigos VBA neste módulo.
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

Código VBA - Exportar em lote todos os e-mails em uma conversa como arquivos de texto

  1. Depois disso, você pode adicionar o novo projeto VBA à Barra de Ferramentas de Acesso Rápido como de costume.
  2. Mais tarde, certifique-se de que o nível de segurança de macro do Outlook esteja baixo.
  3. Por último, você pode tentar.
  • Em primeiro lugar, selecione um e-mail.
  • Em seguida, clique no novo botão de macro na Barra de Ferramentas de Acesso Rápido.
  • Ao receber a mensagem “Complete”, você pode abrir a pasta local predefinida, na qual verá os e-mails no formato “TXT”.

Dicas para restaurar dados PST após corrupção

Freqüentemente, no Outlook, você pode encontrar vários erros do Outlook, alguns dos quais podem ser extremamente sérios, de modo que levam diretamente à corrupção do PST. Nesse momento, você precisa tomar medidas para reparar PST arquivo para encontrar de volta seus dados valiosos. Nesse caso, você pode recorrer a uma ferramenta confiável e comprovada, como DataNumen Outlook Repair.

Introdução do autor:

Shirley Zhang é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo recuperar sql server e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

Compartilhe agora:

Comentários estão fechados.