วิธีการส่งออกจำนวนรายการทั้งหมดในแต่ละโฟลเดอร์ Outlook ไปยัง Excel อย่างรวดเร็ว

แบ่งปันเลย:

หากคุณต้องการรับรายงานเกี่ยวกับจำนวนรายการในแต่ละโฟลเดอร์ Outlook คุณสามารถใช้วิธีการที่แนะนำในบทความนี้ มันจะทำการนับและส่งออกผลลัพธ์ไปยังไฟล์ Excel อย่างรวดเร็ว

ในบทความก่อนหน้าของฉัน -“วิธีรับจำนวนรายการทั้งหมดในโฟลเดอร์และโฟลเดอร์ย่อยทั้งหมดอย่างรวดเร็วผ่าน Outlook VBA” คุณสามารถเรียนรู้วิธีการโดยใช้ VBA เพื่อรับจำนวนรายการในโฟลเดอร์ อย่างไรก็ตามหากคุณต้องการนับรายการในโฟลเดอร์ทั้งหมดคุณต้องเลือกแต่ละโฟลเดอร์และเรียกใช้แมโครทีละรายการ มันค่อนข้างน่าเบื่อ ดังนั้นเราจะสอนวิธีอื่นให้คุณซึ่งจะส่งออกการนับไปยังไฟล์ Excel

ส่งออกจำนวนรายการทั้งหมดในแต่ละโฟลเดอร์ Outlook ไปยัง Excel ได้อย่างรวดเร็ว

ส่งออกจำนวนรายการทั้งหมดในแต่ละโฟลเดอร์ Outlook ไปยัง Excel

  1. ในตอนแรกให้เปิดโปรแกรม Outlook ของคุณ
  2. จากนั้นกดปุ่ม“ Alt + F11” ในหน้าต่างหลักของ Outlook
  3. จากนั้นคุณจะเข้าสู่หน้าต่าง“ Microsoft Visual Basic for Applications” ซึ่งคุณจะต้องเปิดโมดูลที่ไม่ได้ใช้งาน
  4. จากนั้นคัดลอกและวางโค้ด VBA ต่อไปนี้ลงในโมดูลนี้
Public strExcelFile As String
Public objExcelApp As Excel.Application
Public objExcelWorkbook As Excel.Workbook
Public objExcelWorksheet As Excel.Worksheet

Sub Export_CountOfItems_InEachFolder_toExcel()
    Dim objSourcePST As Outlook.Folder
    Dim objFolder As Outlook.Folder
 
    'Create a new Excel file
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    Set objExcelWorksheet = objExcelWorkbook.Sheets("Sheet1")
    objExcelWorksheet.Cells(1, 1) = "Folder"
    objExcelWorksheet.Cells(1, 2) = "Count Items"
 
    'Select a source PST file
    Set objSourcePST = Outlook.Application.Session.PickFolder

    For Each objFolder In objSourcePST.folders
        Call ProcessFolders(objFolder)
    Next
 
    'Fit the columns from A to B
    objExcelWorksheet.Columns("A:B").AutoFit
 
    strExcelFile = "E:\Outlook\" & objSourcePST.Name & " Folder Items Count (" & Format(Now, "yyyy-mm-dd hh-mm-ss") & ").xlsx"
    objExcelWorkbook.Close True, strExcelFile

    MsgBox "Complete!", vbExclamation
End Sub

Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
    Dim objItem As Object
    Dim lCurrentFolderItemCount As Long
    Dim nLastRow As Integer
 
    lCurrentFolderItemCount = objCurrentFolder.Items.Count
 
    nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1

    'Add the values into the columns
    objExcelWorksheet.Range("A" & nLastRow) = objCurrentFolder.FolderPath
    objExcelWorksheet.Range("B" & nLastRow) = lCurrentFolderItemCount
 
    If objCurrentFolder.folders.Count > 0 Then
       For Each objSubfolder In objCurrentFolder.folders
           Call ProcessFolders(objSubfolder)
       Next
    End If
End Sub

รหัส VBA - ส่งออกจำนวนรายการทั้งหมดในแต่ละโฟลเดอร์ Outlook ไปยัง Excel

  1. หลังจากนั้นคุณต้องเปลี่ยนระดับความปลอดภัยของแมโคร Outlook เป็นระดับต่ำ
  2. จากนั้นคุณสามารถกลับไปที่มาโครที่เพิ่มเข้ามาใหม่และกดปุ่ม F5 เพื่อเรียกใช้มาโครนี้
  3. ถัดไปคุณต้องเลือกไฟล์ PST ต้นทางและกด "ตกลง"
  4. หลังจากแมโครเสร็จสิ้นคุณสามารถไปที่โฟลเดอร์ภายในที่กำหนดไว้ล่วงหน้าเพื่อค้นหาไฟล์ Excel ใหม่ซึ่งจะมีลักษณะเหมือนภาพหน้าจอต่อไปนี้:ไฟล์ Excel

ยุติข้อผิดพลาด PST ที่น่ารำคาญ

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

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

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

แบ่งปันเลย:

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