Kako samodejno zabeležiti vsako natisnjeno Outlookovo e-poštno sporočilo v Excelovem delovnem zvezku

Skupna raba zdaj:

Nekateri uporabniki upajo, da bodo dnevnike natisnjenih e-poštnih sporočil samodejno shranili v svoj Outlook. Na voljo pa ni tako neposredna funkcija. V tem članku bomo zato predstavili način samodejnega beleženja vsakega natisnjenega e-poštnega sporočila v določeni Excelovi delovni zvezek.

Iz nekaterih razlogov boste morda morali zapisati podatke e-poštnega sporočila, ko jih natisnete. Očitno Outlook ne vsebuje izvorne funkcije, ki to podpira. Tako morate na splošno to nalogo opraviti ročno. Kljub temu lahko s pomočjo kode VBA še vedno dovolite, da se Outlook z lahkoto loti te naloge. Zdaj vam bomo odkrili tak del kode VBA in podrobne korake.

Samodejno zabeleži vsako natisnjeno e-pošto v Excelovem delovnem zvezku

  1. Kajti kottart, zaženite aplikacijo Outlook.
  2. Nato odprite urejevalnik VBA s klikom na gumb »Visual Basic« na zavihku »Razvijalec«.
  3. Nato v neuporabljeni modul vstavite naslednjo kodo 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

Koda VBA - samodejno zabeleži vsako natisnjeno e-pošto v Excelovem delovnem zvezku

  1. Po tem zapustite urejevalnik VBA.
  2. Nato je v skladu z “Neobveznim korakom” na strost "Kako zagnati kodo VBA v Outlooku“, Dodajte ta makro na trak ali v orodno vrstico za hitri dostop.Na trak dodajte gumb za makro
  3. Od takrat vsakič, ko želite natisniti e-pošto, ne pozabite uporabiti na novo dodanega gumba makra namesto običajnega »Natisni«.Natisni e-pošto
  4. Na ta način bo Outlook natisnjeno pošto samodejno zapisal v vnaprej določen Excelov delovni list.Dnevniki v Excelu

Naj bo datoteka Outlook dostopna

Včasih se po zrušitvi Outlooka lahko prikaže napaka, zaradi katere je datoteka PST nedostopna. Takrat se umirite in nato uporabite orodje za popravilo nabiralnika popraviti Outlook. Vendar vgrajeni pripomoček ni vsestranski. Lahko tudi propade. Če torej vaša datoteka PST po popravilu Scanpst še vedno ni na voljo, je vaše zadnje sredstvo učinkovitejše in zanesljivejše zunanje orodje, kot je DataNumen Outlook Repair.

Uvod avtorja:

Shirley Zhang je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z izterjava mdf in obeti za popravilo programskih izdelkov. Za več informacij obiščite www.datanumen.com

Skupna raba zdaj:

Komentarji so zaprti.