Як автоматично реєструвати кожен надрукований електронний лист Outlook у книзі Excel

Поділитися зараз:

Деякі користувачі сподіваються автоматично зберегти журнали надрукованих електронних листів у своєму Outlook. Однак не існує такої прямої функції. Отже, у цій статті ми представимо спосіб автоматичного журналу кожного надрукованого електронного листа у певній книзі Excel.

З деяких причин вам може знадобитися записати інформацію електронного листа під час його друку. Очевидно, що Outlook не забезпечує власної функції, що підтримує це. Таким чином, загалом, вам доведеться виконати це завдання вручну. Тим не менше, за допомогою коду VBA ви все одно можете дозволити своєму Outlook легко виконувати цю місію. Тепер ми розкриємо для вас такий фрагмент коду VBA та докладні кроки.

Автоматично реєструвати кожен надрукований електронний лист у книзі Excel

  1. Для якtart, запустіть програму Outlook.
  2. Потім відкрийте редактор VBA, натиснувши кнопку «Visual Basic» на вкладці «Розробник».
  3. Потім вставте наступний код VBA у невикористаний модуль.
Sub RecordPrintedEmails()
    Dim objMail As Outlook.MailItem
    Dim objExcelApp As Excel.Application
    Dim strExcelFile As String
    Dim objExcelWorkbook As Excel.Workbook
    Dim objExcelWorksheet As Excel.Worksheet
    Dim nNextEmptyRow As Integer
 
    'Get the mail
    Select Case Outlook.Application.ActiveWindow.Class
           Case olInspector
                Set objMail = ActiveInspector.CurrentItem
           Case olExplorer
                Set objMail = ActiveExplorer.Selection.Item(1)
    End Select
 
    objMail.PrintOut
 
    On Error Resume Next
    Set objExcelApp = CreateObject("Excel.Application")
    objExcelApp.Visible = True
 
    'Change the path to the specific excel file
    strExcelFile = "E:\Emails\Printed Emails.xlsx"
    Set objExcelWorkbook = objExcelApp.Workbooks.Open(strExcelFile)
    Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
    objExcelWorksheet.Activate
 
    nNextEmptyRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
 
    'Change the details as per your own case
    With objExcelWorksheet
         .Cells(nNextEmptyRow, 1) = Date
         .Cells(nNextEmptyRow, 2) = objMail.Subject
         .Cells(nNextEmptyRow, 3) = objMail.Sender
         .Cells(nNextEmptyRow, 4) = objMail.SentOn
         .Cells(nNextEmptyRow, 5) = objMail.Size
         .Cells(nNextEmptyRow, 6) = objMail.Attachments.Count
         .Columns("A:E").AutoFit
    End With
 
    objExcelWorkbook.Close True
    objExcelApp.Quit
End Sub

Код VBA - автоматично реєструвати кожен надрукований електронний лист у книзі Excel

  1. Після цього закрийте редактор VBA.
  2. Згодом, згідно з «Факультативним кроком» у сost "Як запустити код VBA у своєму Outlook“, Додайте цей макрос на стрічку або на панель швидкого доступу.Додайте кнопку макросу на стрічку
  3. Відтоді кожного разу, коли ви хочете надрукувати електронне повідомлення, не забудьте використовувати нещодавно додану кнопку макросу замість стандартної «Друк».Друк електронної пошти
  4. Таким чином, Outlook автоматично реєструє надруковану пошту на попередньо визначеному аркуші Excel.Журнали в Excel

Зберігайте файл Outlook доступним

Іноді після аварійного завершення роботи Outlook може з’явитися повідомлення про помилку, пов’язану з тим, що файл PST недоступний. У цей час вам слід заспокоїтися, а потім скористатися інструментом ремонту вхідних виправити Outlook. Однак вбудована утиліта не є універсальною. Це теж може зазнати невдачі. Отже, якщо ваш файл PST після ремонту Scanpst все ще недоступний, ваш останній засіб є більш ефективним та надійним зовнішнім інструментом, таким як DataNumen Outlook Repair.

Вступ автора:

Ширлі Чжан - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі відновлення mdf та перспективні програмні продукти для ремонту. Для отримання додаткової інформації відвідайте WWW.datanumen.com

Поділитися зараз:

Коментарі закриті.