Cách xuất nhanh số lượng mục trong từng danh mục màu trong Outlook của bạn sang Excel

Chia sẻ ngay bây giờ:

Nếu bạn muốn nhanh chóng nhận được tổng số mục trong từng danh mục màu trong tệp Outlook PST của mình, bạn có thể sử dụng mã VBA được hiển thị trong bài viết này. Nó sẽ xuất trực tiếp tất cả các số đếm vào một tệp Excel để bạn kiểm tra thuận tiện.

Xuất nhanh số lượng mục trong từng danh mục màu trong Outlook của bạn sang ExcelĐôi khi, vì một số lý do, bạn có thể muốn đếm xem có bao nhiêu mục trong mỗi danh mục màu trong tệp dữ liệu Outlook. Nói chung, bạn có thể sử dụng tìm kiếm tức thì để đếm. Chẳng hạn, trước tiên hãy nhấp vào hộp tìm kiếm. Sau đó nhấp vào nút “Phân loại” trong dải băng “Tìm kiếm” và chọn một danh mục màu cụ thể từ danh sách thả xuống. Tiếp theo, chọn “Tất cả các mục Outlook” trong nhóm dải băng “Phạm vi”. Sau đó, sau khi quá trình tìm kiếm hoàn tất, tất cả các mục trong danh mục màu đã chọn sẽ được liệt kê ra. Giờ đây, bạn có thể thấy số lượng các kết quả tìm kiếm này ở góc dưới bên trái của thanh trạng thái.

Không còn nghi ngờ gì nữa, nếu bạn có nhiều danh mục màu sắc, thì việc đếm từng danh mục một sẽ rất tẻ nhạt. Do đó, để đáp ứng yêu cầu này, sau đây chúng tôi sẽ tiết lộ một phương pháp nhanh chóng hơn rất nhiều. Nó sẽ xuất thẳng tất cả số lượng vào một tệp Excel.

Xuất số lượng mục trong từng danh mục màu trong Outlook của bạn sang Excel

  1. Trước tiên, hãy mở ứng dụng Outlook của bạn.
  2. Sau đó nhấn các nút phím “Alt + F11” để truy cập trình soạn thảo VBA của Outlook.
  3. Trong cửa sổ “Microsoft Visual Basic for Applications” tiếp theo, hãy mở một mô-đun trống.
  4. Tiếp theo, bạn có thể sao chép các mã VBA sau vào cửa sổ mô-đun này.
Public objDictionary As Object
Public objExcelApp As Excel.Application
Public objExcelWorkbook As Excel.Workbook
Public objExcelWorksheet As Excel.Worksheet
 
Sub ExportCountofItemsinEachColorCategories()
    Dim objCategories As Object
    Dim objCategory As Object
    Dim objPSTFile As Outlook.Folder
    Dim objFolder As Outlook.Folder
    Dim strExcelFile As String
 
    'Create a New Excel file
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    Set objExcelWorksheet = objExcelWorkbook.Sheets("Sheet1")
    objExcelWorksheet.Cells(1, 1) = "Color Category"
    objExcelWorksheet.Cells(1, 2) = "Count"
 
    'Find all the color categories
    Set objDictionary = CreateObject("Scripting.Dictionary")

    Set objCategories = Outlook.Application.Session.Categories
    For Each objCategory In objCategories
        objDictionary.Add objCategory.Name, 0
    Next
 
    Set objPSTFile = Outlook.Application.Session.PickFolder
 
    For Each objFolder In objPSTFile.Folders
        ProcessFolder objFolder
    Next
 
    'Save the new Excel file
    objExcelWorksheet.Columns("A:B").AutoFit
    strExcelFile = "E:\Outlook\Color Categories (" & Format(Now, "yyyy-mm-dd_hh-mm-ss") & ").xlsx"
    objExcelWorkbook.Close True, strExcelFile

    MsgBox "Complete!", vbExclamation
End Sub
 
Private Sub ProcessFolder(ByVal objCurrentFolder As Outlook.Folder)
    Dim objItem As Object
    Dim objSubFolder As Object
    Dim ArrayCategories As Variant
    Dim VarCategory As Variant
    Dim ArrayKey As Variant
    Dim ArrayItem As Variant
    Dim i As Long
    Dim nRow As Integer

    'Count the items in each color category via Dictionary object
    For Each objItem In objCurrentFolder.Items
        If objItem.Categories <> "" Then
           ArrayCategories = Split(objItem.Categories, ",")
           For Each VarCategory In ArrayCategories
               If objDictionary.Exists(VarCategory) = True Then
                  objDictionary.Item(VarCategory) = objDictionary.Item(VarCategory) + 1
               End If
          Next
        End If
    Next
 
    ArrayKey = objDictionary.Keys
    ArrayItem = objDictionary.Items
    nRow = 2
 
    'Input the information into the new Excel file
    For i = LBound(ArrayKey) To UBound(ArrayKey)
        objExcelWorksheet.Cells(nRow, 1) = ArrayKey(i)
        objExcelWorksheet.Cells(nRow, 2) = ArrayItem(i) & “ Items”
        nRow = nRow + 1
    Next
 
    'Process the subfolders recursively
    For Each objSubFolder In objCurrentFolder.Folders
        ProcessFolder objSubFolder
    Next
End Sub

Mã VBA - Đếm các mục trong từng danh mục màu trong Outlook của bạn

  1. Sau đó, kiểm tra xem Outlook có cho phép macro không.
  2. Cuối cùng bạn có thể có một thử.
  • Đầu tiên, nhấn nút phím F5 trong macro mới này.
  • Sau đó, bạn cần chọn một tệp PST nguồn và nhấn “OK”.
  • Khi bạn nhận được thông báo nhắc “Hoàn thành”, bạn có thể vào ổ đĩa cục bộ và mở thư mục được xác định trước để lưu tệp Excel.
  • Định vị và mở tệp Excel. Nó sẽ trông giống như hình ảnh sau:Tác dụng: Xuất số lượng mục trong mỗi danh mục màu sang Excel

Phải làm gì nếu Outlook gặp sự cố đột ngột

Mặc dù Outlook đi kèm với nhiều tính năng mạnh mẽ, nhưng theo thời gian bạn vẫn sẽ gặp phải một số vấn đề khác nhau với Outlook của mình. Ví dụ, Outlook có thể bị treo đột ngột. Trong trường hợp tốt nhất, khởi động lại Outlook sẽ khắc phục được sự cố. Trong trường hợp xấu nhất, nó có thể dẫn trực tiếp đến việc hỏng dữ liệu PST. Khi đó, bạn sẽ phải sử dụng nhiều phương pháp khác nhau để... sửa chữa PST tệp để lấy lại dữ liệu Outlook tối đa mà bạn có thể quay lại một công cụ có kinh nghiệm 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 lỗi sql 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.