Jak szybko wyeksportować liczbę elementów w każdej kategorii kolorów w Outlooku do Excela?

Podziel się teraz:

Jeśli chcesz szybko uzyskać całkowitą liczbę elementów w każdej kategorii kolorów w pliku PST programu Outlook, możesz użyć kodu VBA przedstawionego w tym artykule. Wszystkie zliczenia zostaną wyeksportowane bezpośrednio do pliku Excel w celu wygodnego sprawdzenia.

Szybko wyeksportuj liczbę elementów w każdej kategorii kolorów w Twoim Outlooku do ExcelaCzasami z pewnych powodów możesz chcieć policzyć, ile elementów znajduje się w każdej kategorii kolorów w pliku danych programu Outlook. Ogólnie rzecz biorąc, do liczenia można użyć wyszukiwania błyskawicznego. Na przykład najpierw kliknij w polu wyszukiwania. Następnie kliknij przycisk „Kategoryzuj” na wstążce „Szukaj” i wybierz konkretną kategorię kolorów z rozwijanej listy. Następnie wybierz "Wszystkie elementy programu Outlook" w grupie wstążki "Zakres". Później, po zakończeniu wyszukiwania, wszystkie elementy w wybranej kategorii kolorystycznej zostaną wymienione. Teraz możesz zobaczyć liczbę tych wyników wyszukiwania w lewym dolnym rogu paska stanu.

Bez wątpienia, jeśli masz dużo kategorii kolorystycznych, w ten sposób liczenie jedna po drugiej będzie bardzo żmudne. Dlatego w odpowiedzi na ten wymóg przedstawimy tutaj bardzo szybką metodę. Bezpośrednio wyeksportuje wszystkie liczby do pliku Excel.

Eksportuj liczbę elementów w każdej kategorii kolorów w Outlooku do Excela

  1. Najpierw uruchom aplikację Outlook.
  2. Następnie naciśnij klawisze „Alt + F11”, aby uzyskać dostęp do edytora VBA programu Outlook.
  3. W kolejnym oknie „Microsoft Visual Basic for Applications” otwórz pusty moduł.
  4. Następnie możesz skopiować następujące kody VBA do tego okna modułu.
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

Kod VBA - Policz elementy w każdej kategorii kolorów w Twoim Outlooku

  1. Następnie sprawdź, czy Outlook zezwala na makra.
  2. Wreszcie możesz spróbować.
  • Najpierw naciśnij klawisz F5 w tym nowym makrze.
  • Następnie musisz wybrać źródłowy plik PST i nacisnąć „OK”.
  • Gdy pojawi się komunikat „Zakończono”, możesz przejść do dysku lokalnego i otworzyć wstępnie zdefiniowany folder, aby zapisać plik Excel.
  • Znajdź i otwórz plik Excel. Będzie wyglądać jak na poniższym obrazku:Efekt: Eksportuj liczbę elementów w każdej kategorii kolorów do Excela

Co zrobić, jeśli Outlook nagle się zawiesi

Chociaż Outlook oferuje wiele zaawansowanych funkcji, z czasem będziesz napotykać różne problemy. Na przykład, Outlook może od czasu do czasu ulegać awariom. W najlepszym przypadku ponowne uruchomienie Outlooka rozwiąże problem. W najgorszym może to prowadzić bezpośrednio do uszkodzenia danych PST. W takim przypadku będziesz musiał skorzystać z różnych metod, aby rozwiązać problem. naprawa PST plik, aby odzyskać maksymalną ilość danych programu Outlook, do których możesz skorzystać z doświadczonego narzędzia, takiego jak DataNumen Outlook Repair.

Wprowadzenie autora:

Shirley Zhang jest ekspertem w dziedzinie odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym naprawa sql i oprogramowanie do naprawy programu Outlook. po więcej informacji odwiedź www.datanumen.com

Podziel się teraz:

Możliwość dodawania komentarzy nie jest dostępna.