如何快速将每个Outlook文件夹中的项目总数导出到Excel

立即分享:

如果您想获得有关每个 Outlook 文件夹中的项目计数的报告,您可以使用本文介绍的方法。 它将快速进行计数并将结果导出到 Excel 文件中。

在我之前的文章中——“如何通过Outlook VBA快速获取文件夹及其所有子文件夹中的项目总数”,您可以学习一种使用 VBA 获取文件夹中项目数的方法。 但是,通过这种方式,如果要统计所有文件夹中的项目,则必须选择每个文件夹并逐个运行宏。 这有点乏味。 因此,我们将教您另一种方法,将计数导出到 Excel 文件。

快速将每个 Outlook 文件夹中的项目总数导出到 Excel

将每个 Outlook 文件夹中的项目总数导出到 Excel

  1. 首先,启动您的 Outlook 程序。
  2. 然后在 Outlook 主窗口中按“Alt + F11”键按钮。
  3. 接下来您将进入“Microsoft Visual Basic for Applications”窗口,您需要在该窗口中打开一个未使用的模块。
  4. 随后,将以下 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

VBA 代码 - 将每个 Outlook 文件夹中的项目总数导出到 Excel

  1. 之后,您需要将 Outlook 宏安全级别更改为低。
  2. 然后你可以回到新添加的宏并按 F5 键按钮运行这个宏。
  3. 接下来,您需要选择源 PST 文件并点击“确定”。
  4. 宏完成后,您可以到预定义的本地文件夹中找到新的 Excel 文件,如下图所示:Excel文件

解决烦人的 PST 错误

也许您在使用 Outlook 的过程中遇到过各种问题。 要处理小问题,您可以简单地求助于 收件箱维修工具. 不过,如果问题严重到超出了内置工具的处理范围,则必须使用更强大的工具,例如 DataNumen Outlook Repair.

作者简介:

Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 中密度纤维板修复 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。