Muitos usuários esperam que o Outlook possa exportar automaticamente as informações primárias dos e-mails recebidos para um arquivo do Excel. Este artigo examinará esse requisito e apresentará um método rápido via Outlook VBA.
Às vezes, por alguns motivos, como estatísticas de e-mail, você pode precisar exportar os e-mails com frequência para um arquivo do Excel. Geralmente, para os e-mails recebidos existentes, você pode simplesmente utilizar o recurso “Importar e exportar” para exportá-los para o Excel de uma só vez. No entanto, talvez você até deseje que o Outlook possa exportar automaticamente os e-mails recebidos para o Excel assim que eles chegarem à sua caixa de correio. Sem dúvidas, não existe tal recurso nativo no Outlook. Portanto, você precisa empregar outras abordagens, como um suplemento de terceiros ou Outlook VBA. Aqui ensinaremos como torná-lo automatizado com o Outlook VBA. Continue lendo para obter as etapas e os códigos correspondentes.
Exportação automática de informações de e-mails recebidos para um arquivo do Excel
- Em primeiro lugar, você deve criar um arquivo Excel.
- Abra um novo arquivo do Excel.
- Então você deve digitar "Não". na Célula A1, “Nome do remetente” na Célula B1, “Endereço de e-mail do remetente” na Célula C1 e “Assunto do e-mail” na Célula D1 e “Hora de recebimento” na Célula E1, conforme a imagem a seguir.

- Por fim, salve-o no nome e na pasta desejados.
- Depois disso, você deve iniciar o Outlook.
- Em seguida, pressione os botões de tecla “Alt + F11”, o que o levará ao editor VBA.
- Em seguida, na janela pop-up, você deve clicar duas vezes em “ThisOutlookSession” no lado esquerdo.
- Posteriormente, na janela do projeto “ThisOutlookSession”, você precisa copiar e colar os seguintes códigos VBA nele.
Public WithEvents objMails As Outlook.Items
Private Sub Application_Startup()
Set objMails = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub objMails_ItemAdd(ByVal Item As Object)
Dim objMail As Outlook.MailItem
Dim strExcelFile As String
Dim objExcelApp As Excel.Application
Dim objExcelWorkBook As Excel.Workbook
Dim objExcelWorkSheet As Excel.Worksheet
Dim nNextEmptyRow As Integer
Dim strColumnB As String
Dim strColumnC As String
Dim strColumnD As String
Dim strColumnE As String
If Item.Class = olMail Then
Set objMail = Item
End If
'Specify the Excel file which you want to auto export the email list
'You can change it as per your case
strExcelFile = "E:\Email\Email Statistics.xlsx"
'Get Access to the Excel file
On Error Resume Next
Set objExcelApp = GetObject(, "Excel.Application")
If Error <> 0 Then
Set objExcelApp = CreateObject("Excel.Application")
End If
Set objExcelWorkBook = objExcelApp.Workbooks.Open(strExcelFile)
Set objExcelWorkSheet = objExcelWorkBook.Sheets("Sheet1")
'Get the next empty row in the Excel worksheet
nNextEmptyRow = objExcelWorkSheet.Range("B" & objExcelWorkSheet.Rows.Count).End(xlUp).Row + 1
'Specify the corresponding values in the different columns
strColumnB = objMail.SenderName
strColumnC = objMail.SenderEmailAddress
strColumnD = objMail.Subject
strColumnE = objMail.ReceivedTime
'Add the vaules into the columns
objExcelWorkSheet.Range("A" & nNextEmptyRow) = nNextEmptyRow - 1
objExcelWorkSheet.Range("B" & nNextEmptyRow) = strColumnB
objExcelWorkSheet.Range("C" & nNextEmptyRow) = strColumnC
objExcelWorkSheet.Range("D" & nNextEmptyRow) = strColumnD
objExcelWorkSheet.Range("E" & nNextEmptyRow) = strColumnE
'Fit the columns from A to E
objExcelWorkSheet.Columns("A:E").AutoFit
'Save the changes and close the Excel file
objExcelWorkBook.Close SaveChanges:=True
End Sub
- Mais tarde você deve assinar este código.
- Em seguida, reinicie o Outlook para ativar o novo projeto VBA.
- Eventualmente, a partir de agora, todos os e-mails recebidos serão exportados automaticamente para o arquivo Excel predefinido assim que chegarem à sua pasta Caixa de entrada. O arquivo Excel será semelhante à imagem a seguir:
Evite a corrupção dolorosa de dados PST
O Outlook ganhou muitos elogios devido aos seus vários recursos. No entanto, isso não significa que é infalível. Ele ainda pode ser comprometido a qualquer momento. Por exemplo, se você fecha seu Outlook incorretamente com frequência, é muito provável que seus dados PST sejam colocados em perigo. Neste caso, se você quiser reparar PST dados, você tem que recorrer a uma ferramenta experiente, 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 mdf e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com

