Como extrair rapidamente anexos de todos os arquivos de mensagens do Outlook em uma pasta do Windows

Compartilhe agora:

Talvez você tenha armazenado vários e-mails do Outlook no formato .msg em uma pasta do Windows. E mais tarde, você deseja extrair os anexos desses arquivos, você pode usar o caminho compartilhado neste artigo.

É muito fácil extrair anexos de e-mails em seu Outlook. Mas e os e-mails que foram exportados como arquivos .msg em uma pasta do Windows? Em geral, você deve primeiro abrir esses arquivos .msg em seu Outlook e, em seguida, salvar os anexos deles, um por um. Talvez você ache muito pesado. Portanto, a seguir, ensinaremos outra solução muito mais rápida.

Extrair anexos de todos os arquivos de mensagens do Outlook em uma pasta do Windows

  1. Para começar, abra o aplicativo Outlook e execute o editor VBA.
  2. Em seguida, na janela “Microsoft Visual Basic for Applications”, copie o código VBA abaixo em um módulo não utilizado.
Dim strAttachmentFolder As String

Sub ExtractAttachmentsFromEmailsStoredinWindowsFolder()
    Dim objShell, objWindowsFolder As Object
 
    '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
       'Create a new folder for saving extracted attachments
       strAttachmentFolder = "E:\Attachments-" & Format(Now, "MMDDHHMMSS") & "\"
       MkDir (strAttachmentFolder)
       Call ProcessFolders(objWindowsFolder.self.Path & "\")
       MsgBox "Completed!", vbInformation + vbOKOnly
    End If
End Sub

Sub ProcessFolders(strFolderPath As String)
    Dim objFileSystem As Object
    Dim objFolder As Object
    Dim objFiles As Object
    Dim objFile As Object
    Dim objItem As Object
    Dim i As Long
    Dim objSubFolder As Object

    Set objFileSystem = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFileSystem.GetFolder(strFolderPath)
    Set objFiles = objFolder.Files
 
    For Each objFile In objFiles
        If objFileSystem.GetExtensionName(objFile) = "msg" Then
           'Open the Outlook emails stored in Windows folder
           Set objItem = Session.OpenSharedItem(objFile.Path)

           If TypeName(objItem) = "MailItem" Then
              If objItem.Attachments.Count > 0 Then
                 'Extract attachments
                 For i = objItem.Attachments.Count To 1 Step -1
                     objItem.Attachments(i).SaveAsFile strAttachmentFolder & objItem.Attachments(i).FileName
                 Next
              End If
           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 ProcessFolders(objSubFolder.Path)
           End If
       Next
    End If
End Sub

Código VBA - Extrair anexos de todos os arquivos de mensagens do Outlook em uma pasta do Windows

  1. Em seguida, mova o cursor para a primeira sub-rotina e pressione a tecla “F5”.
  2. Posteriormente, você deverá escolher a pasta de origem do Windows na caixa de diálogo pop-up.Selecione a pasta do Windows
  3. Depois de clicar em “OK”, a macro continuará a funcionar.
  4. Quando terminar, você receberá a mensagem “Concluído”.
  5. Agora, você pode obter acesso à pasta local predefinida para salvar os anexos extraídos.Anexos Extraídos

Resolva problemas do Outlook com eficiência

Como o Outlook é reconhecidamente propenso a erros, você deve ser cauteloso ao lidar com objetos do Outlook, como nunca confiar nos arquivos ou links incorporados nos e-mails desconhecidos e assim por diante. Caso contrário, seu arquivo do Outlook pode ser corrompido facilmente. Nessa circunstância, mesmo a ferramenta de correção interna não será de muita ajuda. O que você pode recorrer é apenas um utilitário externo experiente, como DataNumen Outlook Repair. Pode corrigir PST arquivo com facilidade sem esforço.

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 sql corrompido e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

Compartilhe agora:

Comentários estão fechados.