跳至主要内容

如何计算Outlook中指定邮箱帐户或所有邮箱下的文件夹总数?

Author: Siluvia Last Modified: 2025-07-31

本文讨论如何计算Outlook中指定邮箱帐户或所有邮箱下的文件夹总数。

使用VBA代码计算指定邮箱帐户或所有邮箱下的文件夹总数


“使用VBA代码计算指定邮箱帐户或所有邮箱下的文件夹总数”

您可以使用以下VBA代码来计算指定邮箱帐户或所有邮箱下的文件夹总数。请按照以下步骤操作。

1. 按下“Alt” + “F11”键打开“Microsoft Visual Basic for Applications”窗口。

2. 在“Microsoft Visual Basic for Applications”窗口中,点击“插入” > “用户窗体”。见截图:

doc-count-number-of-folders-1

3. 接着在“UserForm1”中插入两个“选项按钮”和两个“命令按钮”,并按以下截图所示更改按钮的显示文本。

doc-count-number-of-folders-2

4. 将第一个选项按钮的名称更改为“opbCurAccount”,并将“值”属性更改为“True”。见截图:

doc-count-number-of-folders-3

5. 继续将第二个选项按钮的名称更改为“opbAllAccounts”。然后分别将两个命令按钮的名称指定为“cdbOk”和“cdbCancel”。

6. 双击UserForm1的任意空白处,然后在Userform1(代码)窗口中用以下VBA代码替换原始代码。

VBA代码:计算Outlook中的文件夹数量

Option Explicit
'Update by Extendoffice 20180504
Public xRet As Boolean
Private Sub cdbCancel_Click()
xRet = False
UserForm1.Hide
End Sub
Private Sub cdbOk_Click()
xRet = True
UserForm1.Hide
End Sub
7. Click Insert > Module. Then copy below VBA code into the Module window.
VBA code: Count number of folders in Outlook
Function GetSubFolderCount(ParentFolder As Folder) As Long
    Dim xSubFolders As Folders
    Dim xCurFolder As Outlook.Folder
    Dim xFoldersCount As Integer
    On Error Resume Next
    Set xSubFolders = ParentFolder.Folders
    If xSubFolders.Count > 0 Then
       Set xCurFolder = xSubFolders.GetFirst
       While TypeName(xCurFolder) = "MAPIFolder"
          xFoldersCount = xFoldersCount + GetSubFolderCount(xCurFolder)
         Set xCurFolder = xSubFolders.GetNext
       Wend
       GetSubFolderCount = xFoldersCount + xSubFolders.Count
    Else
        GetSubFolderCount = 0
    End If
    End Function
    
    Sub CountFoldersInOutlook()
    Dim xNameSpace As NameSpace
    Dim xFolder As Folder
    Dim xAllFoldersCount As Long
    On Error Resume Next
    UserForm1.Show
    If UserForm1.xRet Then
        Set xNameSpace = Outlook.Application.Session
        If UserForm1.opbCurAccount.Value Then
            Set xFolder = Outlook.Application.ActiveExplorer.CurrentFolder.Store.GetRootFolder
            xAllFoldersCount = GetSubFolderCount(xFolder)
        ElseIf UserForm1.opbAllAccounts.Value Then
            For Each xFolder In xNameSpace.Folders
                xAllFoldersCount = xAllFoldersCount + GetSubFolderCount(xFolder)
            Next
        End If
    Else
        Exit Sub
    End If
    MsgBox "Total Folders: " & xAllFoldersCount, vbInformation + vbOKOnly, "Kutools for Outlook"
    End Sub

8. 按“F5”键运行代码。然后会弹出一个“UserForm1”对话框,若要计算当前帐户中的文件夹数量,请选择“当前帐户”选项并单击“确定”按钮。若要计算所有邮箱中的文件夹数量,请选择“所有帐户”选项,然后单击“确定”按钮。见截图:

doc-count-number-of-folders-4

9. 然后会弹出一个“Kutools for Outlook”对话框,告诉您当前帐户或所有邮箱中存在的文件夹数量,如下截图所示。请点击“确定”按钮。

doc-count-number-of-folders-5

注意:所有隐藏文件夹(例如“对话操作设置”文件夹和“快速步骤设置”文件夹)都包含在文件夹计数中。

Outlook中的AI邮件助手:更智能的回复,更清晰的沟通(一键搞定!) 免费

使用Kutools for Outlook的AI邮件助手简化您的日常Outlook任务。这一强大工具会从您过去的邮件中学习,提供智能化且精准的回复建议,优化您的邮件内容,并帮助您轻松起草和润色邮件。
doc ai email handle

该功能支持:

  • 智能回复:根据您以往的对话生成量身定制、精准且即用的回复。
  • 增强内容:自动优化您的邮件文本,使其更加清晰且有影响力。
  • 轻松撰写:只需提供关键字,AI即可完成其余工作,并支持多种写作风格。
  • 智能扩展:通过上下文感知的建议扩展您的思路。
  • 总结概括:快速获取长邮件的简洁概述。
  • 全球覆盖:轻松将您的邮件翻译成任何语言。

该功能支持:

  • 智能邮件回复
  • 优化后的内容
  • 基于关键字的草稿
  • 智能内容扩展
  • 邮件总结
  • 多语言翻译

最重要的是,此功能永久完全免费不要再犹豫了——立即下载AI邮件助手并体验吧


相关文章:

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!