Skip to main content

Como imprimir todos os anexos em um ou vários e-mails no Outlook?

Author: Kelly Last Modified: 2025-06-04

Como você sabe, ao clicar em Arquivo > Imprimir no Microsoft Outlook, ele só imprime o conteúdo do e-mail, como cabeçalho e corpo, mas não imprime os anexos. Aqui mostraremos como imprimir facilmente todos os anexos de um e-mail selecionado no Microsoft Outlook.


Imprimir todos os anexos em uma mensagem de e-mail um por um

O Microsoft Outlook oferece a funcionalidade de Impressão Rápida, que pode ajudá-lo a imprimir anexos em uma mensagem de e-mail um por um.

1. Selecione a mensagem de e-mail cujos anexos você deseja imprimir posteriormente.

2. Clique em um anexo neste e-mail.

steps of printing all attachments in one email message one by one

3. Clique no botão Impressão Rápida no grupo Ações na guia Anexos.

steps of printing all attachments in one email message one by one
Observação: as Ferramentas de Anexo não serão ativadas até que você clique nos anexos nos e-mails.

4. Uma caixa de diálogo Abrindo Anexo de E-mail aparecerá, e por favor clique no botão Abrir .

steps of printing all attachments in one email message one by one

Observe que esta etapa abrirá o anexo selecionado e imprimirá esse anexo ao mesmo tempo.

Para imprimir outros anexos neste e-mail, repita os passos 2 a 4.

Salvar/exportar rapidamente todos os anexos de vários e-mails no Outlook

Normalmente, podemos salvar anexos de um e-mail ativando as Ferramentas de Anexo e aplicando o recurso Salvar Todos os Anexos no Outlook. Mas, e se quisermos salvar anexos de vários e-mails ou de toda a pasta de correio no Outlook? Experimente o recurso Salvar Todos (Anexos) do Kutools para Outlook.

save attachments in multiple emails kto9

Impressão em lote de todos os anexos em uma mensagem de e-mail

Se houver muitos anexos em uma mensagem de e-mail, será demorado imprimi-los um por um. O método a seguir mostrará como imprimir em lote todos os anexos em uma mensagem de e-mail selecionada facilmente.

1. Selecione a mensagem de e-mail cujos anexos você deseja imprimir posteriormente.

2. No Outlook 2010 ou versões posteriores, clique em Arquivo > Imprimir > Opções de Impressão. Veja a captura de tela abaixo:

steps of batch printing all attachments in one email message

3. Na caixa de diálogo Imprimir, marque a opção Imprimir arquivos anexados. Os anexos serão impressos apenas na impressora padrão na seção Opções de Impressão.

steps of batch printing all attachments in one email message

4. Clique no botão Imprimir.

5. Na caixa de diálogo Abrindo Anexo de E-mail que aparece, clique no botão Abrir para continuar. (Nota: Esta caixa de diálogo aparecerá separadamente para cada anexo.)

steps of batch printing all attachments in one email message

Agora, todos os anexos nesta mensagem de e-mail selecionada serão impressos de uma vez.


Impressão em lote de todos os anexos e imagens em vários e-mails selecionados

Para imprimir todos os anexos em vários e-mails, bem como todas as imagens no corpo da mensagem no Outlook, siga os passos abaixo para aplicar um código VBA.

1. Na lista de e-mails, mantenha pressionadas as teclas Ctrl ou Shift para selecionar vários e-mails cujos anexos você deseja imprimir.

2. Pressione as teclas Alt + F11 juntas para abrir a janela Microsoft Visual Basic for Applications.

3. Na janela Microsoft Visual Basic for Applications, clique em Ferramentas > Referências. Em seguida, marque a opção Microsoft Scripting Runtime conforme mostrado abaixo. Quando terminar, clique em OK.

steps of batch printing all attachments and pictures in multiple selected emails

4. Clique em Inserir > Módulo, e depois cole o código VBA abaixo na nova janela de módulo.

VBA: Imprimir todos os anexos em vários e-mails do Outlook

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/03
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        xFilePath = xTempFldPath & "\" & xAttachment.FileName
        xAttachment.SaveAsFile (xFilePath)
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

5. Pressione a tecla F5 ou clique no botão Executar para executar este código VBA. Agora você verá que todos os anexos nos e-mails selecionados e as imagens no corpo da mensagem são impressos.

Observação:

  • Cada imagem exibirá uma caixa de diálogo pop-up pedindo sua confirmação para impressão. Já outros tipos de arquivos serão impressos diretamente.
  • Se houver imagens em uma assinatura de e-mail, elas também exibirão caixas de diálogo pop-up.
  • Se você receber o erro As macros neste projeto estão desativadas, consulte este tutorial: Como Ativar e Desativar Macros no Outlook?

Impressão em lote de todos os anexos em vários e-mails selecionados, exceto as imagens no corpo

Para imprimir apenas os anexos em vários e-mails, mas não as imagens no corpo da mensagem no Outlook, siga os passos abaixo para aplicar um código VBA.

1. Na lista de e-mails, mantenha pressionadas as teclas Ctrl ou Shift para selecionar vários e-mails cujos anexos você deseja imprimir.

2. Pressione as teclas Alt + F11 juntas para abrir a janela Microsoft Visual Basic for Applications.

3. Na janela Microsoft Visual Basic for Applications, clique em Ferramentas > Referências. Em seguida, marque a opção Microsoft Scripting Runtime conforme mostrado abaixo. Quando terminar, clique em OK.

the steps of batch printing all attachments in multiple selected emails except pictures in the body

4. Clique em Inserir > Módulo, e depois cole o código VBA abaixo na nova janela de módulo.

VBA: Imprimir todos os anexos em vários e-mails do Outlook

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/05
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        If IsEmbeddedAttachment(xAttachment) = False Then
          xFilePath = xTempFldPath & "\" & xAttachment.FileName
          xAttachment.SaveAsFile (xFilePath)
          Debug.Print xFilePath
        End If
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function

5. Pressione a tecla F5 ou clique no botão Executar para executar este código VBA. Agora você verá que todos os anexos nos e-mails selecionados são impressos.

Observação:

  • Cada imagem anexada exibirá uma caixa de diálogo pop-up pedindo sua confirmação para impressão. Já outros tipos de arquivos serão impressos diretamente.
  • As imagens no corpo da mensagem não serão impressas.
  • Se você receber o erro As macros neste projeto estão desativadas, consulte este tutorial: Como Ativar e Desativar Macros no Outlook?

Demonstração: imprimir um ou todos os anexos em um e-mail do Outlook

 

Melhores Ferramentas de Produtividade para Office

Notícia de Última Hora: Kutools para Outlook Lança Versão Gratuita!

Experimente agora a nova versão GRATUITA do Kutools para Outlook, com mais de70 recursos incríveis para você usar PARA SEMPRE! Clique para baixar agora!

🤖 Kutools AI : Utiliza tecnologia avançada de IA para gerenciar emails com facilidade, incluindo responder, resumir, otimizar, expandir, traduzir e redigir emails.

📧 Automação de Email: Resposta automática (Disponível para POP e IMAP) / Agendar envio de emails / CC/BCC automático por Regra ao enviar email / Encaminhamento automático (Regra avançada) / Adicionar saudação automaticamente / Dividir automaticamente emails com múltiplos destinatários em mensagens individuais...

📨 Gerenciamento de Email: Recallar Email / Bloquear emails suspeitos por assunto e outros critérios / Excluir Emails Duplicados / Pesquisa Avançada / Organizar Pastas...

📁 Anexos Pro: Salvar em lote / Desanexar em lote / Comprimir em lote / Salvar automaticamente / Desanexar automaticamente / Auto Comprimir...

🌟 Interface Mágica: 😊Mais emojis bonitos e estilosos / Aviso quando emails importantes chegarem / Minimizar Outlook ao invés de fechar...

👍 Recursos com Um Clique: Responder a Todos com Anexos / Emails Anti-Phishing / 🕘Exibir o fuso horário do remetente...

👩🏼‍🤝‍👩🏻 Contatos & Calendário: Adicionar contatos em lote a partir de emails selecionados / Dividir um grupo de contatos em grupos individuais / Remover lembrete de aniversário...

Desbloqueie instantaneamente o Kutools para Outlook com um único clique. Não perca tempo, baixe agora e aumente sua produtividade!

kutools for outlook features1 kutools for outlook features2