Come esportare rapidamente il conteggio degli elementi in ciascuna categoria di colore in Outlook in Excel

Condividi ora:

Se desideri ottenere rapidamente il conteggio totale degli elementi in ciascuna categoria di colore nel tuo file PST di Outlook, puoi utilizzare il codice VBA esposto in questo articolo. Esporterà tutti i conteggi in un file Excel direttamente per il tuo comodo controllo.

Esporta rapidamente il conteggio degli elementi in ogni categoria di colore nel tuo Outlook in ExcelA volte, per qualche motivo, potresti voler contare quanti elementi ci sono in ciascuna categoria di colore in un file di dati di Outlook. In generale, puoi utilizzare la ricerca istantanea per eseguire il conteggio. Ad esempio, prima fai clic nella casella di ricerca. Quindi fare clic sul pulsante "Categorizza" nella barra multifunzione "Cerca" e scegliere una categoria di colore specifica dall'elenco a discesa. Quindi seleziona "Tutti gli elementi di Outlook" nel gruppo della barra multifunzione "Ambito". Successivamente, al termine della ricerca, verranno elencati tutti gli elementi nella categoria di colore selezionata. Ora puoi vedere il conteggio di questi risultati di ricerca nell'angolo in basso a sinistra della barra di stato.

Senza dubbio, se hai molte categorie di colori, in questo modo contarle una per una sarà molto noioso. Pertanto, in risposta a questa esigenza, qui sveleremo un metodo molto rapido. Esporterà direttamente tutti i conteggi in un file Excel.

Esporta il numero di elementi in ogni categoria di colore in Outlook in Excel

  1. In primo luogo, start la tua applicazione Outlook.
  2. Quindi premere i pulsanti "Alt + F11" per accedere all'editor VBA di Outlook.
  3. Nella successiva finestra "Microsoft Visual Basic for Applications", apri un modulo vuoto.
  4. Successivamente puoi copiare i seguenti codici VBA in questa finestra del modulo.
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

Codice VBA: conta gli elementi in ogni categoria di colore in Outlook

  1. Successivamente, controlla se Outlook consente le macro.
  2. Finalmente puoi provare.
  • Innanzitutto, premi il tasto F5 in questa nuova macro.
  • Quindi è necessario selezionare un file PST di origine e premere "OK".
  • Quando ricevi il messaggio che richiede "Completato", puoi andare sull'unità locale e aprire la cartella predefinita per salvare il file Excel.
  • Individua e apri il file Excel. Assomiglierà alla seguente immagine:Effetto: Esporta il conteggio degli elementi in ogni categoria di colore in Excel

Cosa fare se Outlook si blocca improvvisamente

Sebbene Outlook sia dotato di molteplici potenti funzionalità, con il passare del tempo tenderai a incontrare vari problemi in Outlook. Ad esempio, Outlook può bloccarsi di tanto in tanto. Nella migliore delle ipotesi, ristarting Outlook sarà in grado di risolvere il problema. Nel peggiore dei casi, può portare direttamente alla corruzione dei dati PST. A quel tempo, utilizzerai vari mezzi per riparare PST file per recuperare il massimo dei dati di Outlook, per i quali è possibile ricorrere a uno strumento esperto come DataNumen Outlook Repair.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui riparazione sql e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.