Jeśli chcesz uzyskać raport o liczbie elementów w każdym folderze programu Outlook, możesz skorzystać z metody przedstawionej w tym artykule. Szybko wykona liczenie i wyeksportuje wyniki do pliku Excel.
W moim poprzednim artykule - „Jak szybko uzyskać całkowitą liczbę elementów w folderze i wszystkich jego podfolderach za pośrednictwem programu Outlook VBA”, Możesz nauczyć się metody uzyskiwania liczby elementów w folderze za pomocą języka VBA. Jednak w ten sposób, jeśli chcesz policzyć elementy we wszystkich folderach, musisz wybrać każdy folder i po kolei uruchomić makro. To trochę uciążliwe. Dlatego nauczymy Cię innej metody, która wyeksportuje licznik do pliku Excel.
Wyeksportuj całkowitą liczbę elementów w każdym folderze programu Outlook do programu Excel
- Na początku uruchom program Outlook.
- Następnie naciśnij klawisze „Alt + F11” w głównym oknie Outlooka.
- Następnie przejdziesz do okna „Microsoft Visual Basic for Applications”, w którym musisz otworzyć nieużywany moduł.
- Następnie skopiuj i wklej następujący kod VBA do tego modułu.
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
- Następnie musisz zmienić poziom bezpieczeństwa makr programu Outlook na niski.
- Następnie możesz wrócić do nowo dodanego makra i nacisnąć klawisz F5, aby uruchomić to makro.
- Następnie wybierz źródłowy plik PST i naciśnij „OK”.
- Po zakończeniu działania makra możesz przejść do wstępnie zdefiniowanego folderu lokalnego, aby znaleźć nowy plik Excel, który będzie wyglądał jak poniższy zrzut ekranu:
Wyeliminuj irytujące błędy PST
Być może napotkałeś różne problemy podczas korzystania z Outlooka. Aby poradzić sobie z drobnymi problemami, możesz po prostu skorzystać z narzędzie do naprawy skrzynki odbiorczej. Niemniej jednak, jeśli problemy są tak poważne, że wykraczają poza to, co może zrobić wbudowane narzędzie, musisz użyć mocniejszego 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 mdf i oprogramowanie do naprawy programu Outlook. po więcej informacji odwiedź www.datanumen.com


