Cách xuất nhanh Tổng số mục trong mỗi thư mục Outlook sang Excel

Chia sẻ ngay bây giờ:

Nếu bạn muốn nhận báo cáo về số lượng mục trong mỗi thư mục Outlook, bạn có thể sử dụng phương pháp được giới thiệu trong bài viết này. Nó sẽ nhanh chóng thực hiện việc đếm và xuất kết quả thành tệp Excel.

Trong bài viết trước của tôi – “Cách lấy nhanh Tổng số mục trong một thư mục và tất cả các thư mục con của nó thông qua Outlook VBA”, bạn có thể tìm hiểu một phương pháp sử dụng VBA để lấy số lượng mục trong một thư mục. Tuy nhiên, điều đó có nghĩa là nếu bạn muốn đếm các mục trong tất cả các thư mục, bạn phải chọn từng thư mục và chạy macro từng cái một. Đó là một chút tẻ nhạt. Do đó, chúng tôi sẽ hướng dẫn bạn một phương pháp khác, phương pháp này sẽ xuất số đếm sang tệp Excel.

Xuất nhanh Tổng số mục trong mỗi thư mục Outlook sang Excel

Xuất Tổng số mục trong mỗi thư mục Outlook sang Excel

  1. Ngay từ đầu, hãy khởi chạy chương trình Outlook của bạn.
  2. Sau đó nhấn các nút phím “Alt + F11” trong cửa sổ chính của Outlook.
  3. Tiếp theo, bạn sẽ vào cửa sổ “Microsoft Visual Basic for Applications”, trong đó bạn cần mở một mô-đun không được sử dụng.
  4. Sau đó, sao chép và dán mã VBA sau vào mô-đun này.
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

Mã VBA - Xuất Tổng số Mục trong Mỗi Thư mục Outlook sang Excel

  1. Sau đó, bạn cần thay đổi cấp độ bảo mật macro Outlook của mình thành thấp.
  2. Sau đó, bạn có thể quay lại macro mới được thêm và nhấn nút phím F5 để chạy macro này.
  3. Tiếp theo, bạn cần chọn một tệp PST nguồn và nhấn “OK”.
  4. Sau khi macro kết thúc, bạn có thể vào thư mục cục bộ được xác định trước để tìm tệp Excel mới, tệp này sẽ giống như ảnh chụp màn hình sau:Tệp Excel

Giải quyết các lỗi PST khó chịu

Có lẽ bạn đã gặp nhiều vấn đề khác nhau trong quá trình sử dụng Outlook. Để giải quyết các vấn đề nhỏ, bạn chỉ cần dùng đến công cụ sửa chữa hộp thư đến. Tuy nhiên, nếu các vấn đề nghiêm trọng đến mức chúng vượt quá khả năng của công cụ sẵn có, bạn phải sử dụng một công cụ mạnh hơn, chẳng hạn như DataNumen Outlook Repair.

Giới thiệu tác giả:

Shirley Zhang là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm sửa chữa mdf và các sản phẩm phần mềm sửa chữa triển vọng. Để biết thêm thông tin, hãy truy cập www.datanumennăm

Chia sẻ ngay bây giờ:

Được đóng lại.