Če želite prejeti poročilo o številu elementov v vsaki Outlookovi mapi, lahko uporabite metodo, predstavljeno v tem članku. Hitro bo opravil štetje in izvozil rezultate v datoteko Excel.
V prejšnjem članku - "Kako hitro pridobiti skupno število elementov v mapi in vseh njenih podmapah prek programa Outlook VBA”, se lahko naučite metode z uporabo VBA za pridobitev števila elementov v mapi. Če pa tako želite prešteti elemente v vseh mapah, morate izbrati vsako mapo in zagnati makro enega za drugim. Malo je dolgočasno. Zato vas bomo naučili druge metode, ki bo izvozila štetje v datoteko Excel.
Izvozite skupno število elementov v vsaki Outlookovi mapi v Excel
- Na začetku zaženite program Outlook.
- Nato v glavnem Outlookovem oknu pritisnite tipke “Alt + F11”.
- Nato se odpre okno »Microsoft Visual Basic for Applications«, v katerem morate odpreti modul, ki ni v uporabi.
- Nato v ta modul kopirajte in prilepite naslednjo kodo VBA.
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
- Po tem morate spremeniti raven varnosti makra v Outlooku na nizko.
- Nato se lahko vrnete na novo dodan makro in pritisnete tipko F5, da zaženete ta makro.
- Nato morate izbrati izvorno datoteko PST in pritisniti »V redu«.
- Ko se makro konča, lahko odprete vnaprej določeno lokalno mapo in poiščete novo Excelovo datoteko, ki bo videti kot ta posnetek zaslona:
Odpravite nadležne napake PST
Morda ste med uporabo Outlooka naleteli na različne težave. Za reševanje majhnih težav se lahko preprosto zatečete k orodje za popravilo nabiralnika. Kljub temu, če so težave tako resne, da presegajo zmožnosti vgrajenega orodja, morate uporabiti močnejše orodje, npr. DataNumen Outlook Repair.
Uvod avtorja:
Shirley Zhang je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z popravilo mdf in obeti za popravilo programskih izdelkov. Za več informacij obiščite www.datanumen.com


