Hvis du ønsker å få en rapport om antall elementer i hver Outlook-mappe, kan du bruke metoden introdusert i denne artikkelen. Den vil raskt gjøre tellingen og eksportere resultatene til en Excel-fil.
I min forrige artikkel - "Slik får du raskt det totale antallet elementer i en mappe og alle undermapper via Outlook VBA”, kan du lære en metode ved å bruke VBA for å få tellingen av elementer i en mappe. Men på den måten, hvis du vil telle elementene i alle mapper, må du velge hver mappe og kjøre makroen en etter en. Det er litt kjedelig. Derfor vil vi lære deg en annen metode, som vil eksportere tellingen til en Excel-fil.

Eksporter det totale antallet elementer i hver Outlook-mappe til Excel
- Start Outlook-programmet til å begynne med.
- Trykk deretter på "Alt + F11"-tastene i hovedvinduet i Outlook.
- Deretter kommer du inn i "Microsoft Visual Basic for Applications"-vinduet, der du må åpne en modul som ikke er i bruk.
- Deretter kopierer og limer du inn følgende VBA-kode i denne modulen.
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
- Etter det må du endre Outlook-makrosikkerhetsnivået til lavt.
- Deretter kan du gå tilbake til den nylig lagt til makroen og trykke på F5-tasten for å kjøre denne makroen.
- Deretter må du velge en kilde PST-fil og trykke "OK".
- Etter at makroen er ferdig, kan du gå til den forhåndsdefinerte lokale mappen for å finne den nye Excel-filen, som vil se ut som følgende skjermbilde:
Slå deg ned med irriterende PST-feil
Kanskje du har støtt på forskjellige problemer under bruk av Outlook. For å håndtere de små problemene, kan du ganske enkelt ty til verktøy for reparasjon av innboks. Likevel, hvis problemene er så alvorlige at de har vært utover det det innebygde verktøyet kan gjøre, må du bruke et kraftigere verktøy, som DataNumen Outlook Repair.
Forfatterintroduksjon:
Shirley Zhang er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert mdf reparasjon og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med

