Se você deseja obter um relatório sobre a contagem de itens em cada pasta do Outlook, pode usar o método apresentado neste artigo. Ele fará a contagem rapidamente e exportará os resultados para um arquivo do Excel.
No meu artigo anterior – “Como obter rapidamente a contagem total de itens em uma pasta e todas as suas subpastas via Outlook VBA”, você pode aprender um método usando VBA para obter a contagem de itens em uma pasta. No entanto, dessa forma, se você quiser contar os itens em todas as pastas, deverá selecionar cada pasta e executar a macro uma a uma. É um pouco tedioso. Por isso, ensinaremos outro método, que exportará a contagem para um arquivo do Excel.
Exportar a contagem total de itens em cada pasta do Outlook para o Excel
- No início, inicie seu programa Outlook.
- Em seguida, pressione os botões de tecla “Alt + F11” na janela principal do Outlook.
- Em seguida, você entrará na janela “Microsoft Visual Basic for Applications”, na qual você precisa abrir um módulo que não está em uso.
- Posteriormente, copie e cole o seguinte código VBA neste módulo.
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
- Depois disso, você precisa alterar o nível de segurança de macro do Outlook para baixo.
- Em seguida, você pode voltar para a macro recém-adicionada e pressionar o botão da tecla F5 para executar esta macro.
- Em seguida, você precisa selecionar um arquivo PST de origem e clicar em “OK”.
- Depois que a macro terminar, você pode ir para a pasta local predefinida para encontrar o novo arquivo do Excel, que se parecerá com a seguinte captura de tela:
Acalme erros irritantes de PST
Talvez você tenha se deparado com vários problemas durante o uso do Outlook. Para lidar com os pequenos problemas, você pode simplesmente recorrer ao ferramenta de reparo da caixa de entrada. No entanto, se os problemas são tão sérios que estão além do que a ferramenta embutida pode fazer, você deve usar uma ferramenta mais poderosa, como DataNumen Outlook Repair.
Introdução do autor:
Shirley Zhang é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo conserto de mdf e produtos de software de reparo do Outlook. Para mais informações visite www.datanumen.com


