Se você deseja exportar rapidamente todos os anexos de imagem de um e-mail do Outlook para uma planilha do Excel, consulte este artigo. Aqui, mostraremos uma maneira mais eficaz do que exportar manualmente.
Ao receber um e-mail com vários anexos de imagem, se você quiser usá-los para criar um relatório no Excel, precisará de uma maneira de exportar essas imagens para uma planilha do Excel em lotes. A seguir, apresentaremos uma solução desse tipo.

Exportar todos os anexos de imagem de um e-mail para uma planilha do Excel
- Para começar, acesse seu aplicativo Outlook normalmente.
- Em seguida, na janela do Outlook, pressione os atalhos de tecla “Alt + F11”, que abrirão a janela “Microsoft Visual Basic for Applications”.
- Nesta tela, você precisa abrir um módulo que não está sendo utilizado ou inserir um novo diretamente.
- Em seguida, você deve copiar o trecho de código VBA abaixo para este módulo.
Sub ExportAllImageAttachmentsToExcelWorksheet()
Dim objSourceMail As Outlook.MailItem
Dim objAttachment As Outlook.Attachment
Dim strImage As String
Dim objExcelApp As Excel.Application
Dim objExcelWorkbook As Excel.Workbook
Dim objExcelWorksheet As Excel.Worksheet
Dim objFile As Object
Dim objFiles As Object
Dim nRow As Integer
Select Case Outlook.Application.ActiveWindow.Class
Case olInspector
Set objSourceMail = ActiveInspector.currentItem
Case olExplorer
Set objSourceMail = ActiveExplorer.Selection.Item(1)
End Select
If Not (objSourceMail Is Nothing) Then
'Save the image attachments to a temporary folder
strTempFolder = Environ("Temp") & "\" & Format(Now, "yyyymmddhhmmss") & "\"
MkDir (strTempFolder)
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
For Each objAttachment In objSourceMail.Attachments
If IsEmbedded(objAttachment) = False Then
Select Case LCase(objFileSystem.GetExtensionName(objAttachment.filename))
Case "jpg", "jpeg", "png", "bmp", "gif"
objAttachment.SaveAsFile strTempFolder & objAttachment.filename
End Select
End If
Next
'Create a new Excel workbook
Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
objExcelApp.Visible = True
objExcelWorkbook.Activate
'Get the images in the temporary folder
Set objFiles = objFileSystem.GetFolder(strTempFolder).Files
'Insert the images into this new Excel worksheet
For Each objFile In objFiles
strImage = strTempFolder & Trim(objFile.Name)
nRow = nRow + 1
With objExcelWorksheet
.Range("A" & nRow).value = objFile.Name
'Change the height and width as per your needs
.Range("B" & nRow).ColumnWidth = 10
.Range("B" & nRow).RowHeight = 80
.Range("B" & nRow).Activate
With .Pictures.insert(strImage)
With .ShapeRange
.LockAspectRatio = msoTrue
.Width = 50
.Height = 70
End With
End With
.Columns("A").AutoFit
.Activate
End With
Next
End If
End Sub
Function IsEmbedded(objCurAttachment As Outlook.Attachment) As Boolean
Dim objPropertyAccessor As Outlook.propertyAccessor
Dim strProperty As String
Set objPropertyAccessor = objCurAttachment.propertyAccessor
strProperty = objPropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E")
If InStr(1, strProperty, "@") > 0 Then
IsEmbedded = True
Else
IsEmbedded = False
End If
End Function
- Depois disso, você pode sair da macro.
- Em seguida, vá para “Arquivo” > “Opções” > “Barra de Ferramentas de Acesso Rápido” para adicionar esta macro à Barra de Ferramentas de Acesso Rápido.
- Por fim, você pode experimentar esta macro agora mesmo.
- Em primeiro lugar, selecione ou abra um e-mail de origem.
- Em seguida, clique no botão de macro na Barra de Ferramentas de Acesso Rápido.
- Quando a macro for concluída, você obterá uma planilha do Excel, mostrada como na captura de tela a seguir:
Proteja o arquivo do Outlook contra corrupção
Sabe-se que o Outlook é propenso a corrupção. Portanto, devemos entender como proteger a corrupção do formulário do Outlook. Em primeiro lugar, para bloquear ataques de vírus, é necessário instalar um software antivírus e nunca baixar anexos desconhecidos. Além disso, é melhor conseguirmos uma ferramenta de reparo potente, como DataNumen Outlook RepairPode oferecer a solução mais eficaz em caso de Corrupção do Outlook.
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 recuperação sql e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

