Многие пользователи надеются, что Outlook может автоматически экспортировать основную информацию о входящих сообщениях электронной почты в файл Excel. В этой статье мы рассмотрим это требование и представим быстрый метод через Outlook VBA.
Иногда, по некоторым причинам, таким как статистика почты, вам может часто понадобиться экспортировать электронные письма в файл Excel. Как правило, для существующих полученных электронных писем вы можете просто использовать функцию «Импорт и экспорт», чтобы экспортировать их в Excel за один раз. Однако, возможно, вы даже хотите, чтобы Outlook мог автоматически экспортировать входящие электронные письма в Excel, как только они поступают в ваш почтовый ящик. Вне всякого сомнения, в Outlook такой встроенной функции нет. Поэтому вам необходимо использовать другие подходы, такие как сторонняя надстройка или Outlook VBA. Здесь мы научим вас, как сделать это автоматически с помощью Outlook VBA. Читайте дальше, чтобы получить шаги и соответствующие коды.
Автоматический экспорт информации о входящих сообщениях электронной почты в файл Excel
- Во-первых, вы должны создать файл Excel.
- Откройте новый файл Excel.
- Затем вы должны ввести «Нет». в ячейке A1, «Имя отправителя» в ячейке B1, «Адрес электронной почты отправителя» в ячейке C1 и «Тема сообщения» в ячейке D1 и «Время получения» в ячейке E1, как показано на следующем рисунке.
- Наконец, сохраните его под желаемым именем и в нужной папке.
- После этого следует запустить Outlook.
- Затем нажмите клавиши «Alt + F11», чтобы открыть редактор VBA.
- Затем во всплывающем окне вы должны дважды щелкнуть «ThisOutlookSession» с левой стороны.
- Впоследствии в окне проекта «ThisOutlookSession» необходимо скопировать и вставить в него следующие коды VBA.
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
- Позже вы должны подписать этот код.
- Впоследствии резtar• Outlook, чтобы активировать новый проект VBA.
- В конце концов, с этого момента все входящие электронные письма будут автоматически экспортироваться в предустановленный файл Excel, как только они попадут в папку «Входящие». Файл Excel будет выглядеть следующим образом:
Предотвращение болезненного повреждения данных PST
Outlook заслужил много похвал благодаря своим различным функциям. Однако это не означает, что это надежно. Он по-прежнему может быть скомпрометирован в любое время. Например, если вы часто неправильно закрываете Outlook, очень вероятно, что ваши данные PST будут подвергнуты опасности. В этом случае, если вы хотите восстановить PST данных, вы должны прибегнуть к опытному инструменту, такому как DataNumen Outlook Repair.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая восстановить мдф и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com


