วิธีบันทึกอีเมล 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 ของคุณ“ เพิ่มมาโครนี้ลงใน Ribbon หรือแถบเครื่องมือด่วนเพิ่มปุ่มมาโครลงใน Ribbon
  3. ตั้งแต่นั้นมาทุกครั้งเมื่อคุณต้องการพิมพ์อีเมลอย่าลืมใช้ปุ่มมาโครที่เพิ่มเข้ามาใหม่แทน "พิมพ์" มาตรฐานพิมพ์อีเมล
  4. ด้วยวิธีนี้ Outlook จะบันทึกจดหมายที่พิมพ์ลงในแผ่นงาน Excel ที่กำหนดไว้ล่วงหน้าโดยอัตโนมัติบันทึกใน Excel

ทำให้ไฟล์ Outlook สามารถเข้าถึงได้

ในบางครั้งหลังจากที่ Outlook ขัดข้องคุณอาจได้รับข้อผิดพลาดที่แจ้งว่าไม่สามารถเข้าถึงไฟล์ PST ได้ ในเวลานั้นคุณควรสงบสติอารมณ์และใช้ประโยชน์จากเครื่องมือซ่อมแซมกล่องจดหมายเพื่อ แก้ไข Outlook. อย่างไรก็ตามยูทิลิตี้ inbuilt นั้นไม่สามารถใช้งานได้หลากหลาย มันสามารถล้มเหลวได้เช่นกัน ดังนั้นหากไฟล์ PST ของคุณยังไม่สามารถใช้งานได้หลังจากการซ่อมแซม Scanpst ทางเลือกสุดท้ายของคุณคือเครื่องมือภายนอกที่มีประสิทธิภาพและเชื่อถือได้มากขึ้นเช่น DataNumen Outlook Repair.

บทนำผู้เขียน:

Shirley Zhang เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ การกู้คืน mdf และผลิตภัณฑ์ซอฟต์แวร์ซ่อมแซมแนวโน้ม ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.

แบ่งปันเลย:

ความเห็นถูกปิด