跳至主要内容

如何计算Outlook中标记的邮件数量?

Author: Xiaoyang Last Modified: 2025-07-31

在Outlook中,您可以标记邮件、联系人或任务以使它们突出显示,但有时您需要统计Outlook中标记项目的数量。那么,如何在Outlook中完成此任务呢?

使用搜索文件夹统计一个帐户中标记的邮件数量

使用VBA代码分别统计所有帐户中标记的邮件/联系人/任务的数量


a name="a1"> 使用搜索文件夹统计一个帐户中标记的邮件数量

要统计Outlook某个帐户中标记的邮件数量,可以借助“搜索文件夹”功能,请按照以下步骤操作:

1. 右键单击您的邮箱帐户下的 “搜索文件夹”,然后选择“新建搜索文件夹”,请参见截图:

doc count flagged items 1

2. 接着会弹出一个“新建搜索文件夹”对话框,在“阅读邮件”部分点击“标记为需后续工作的邮件”选项,请参见截图:

doc count flagged items 2

3. 然后点击“确定”,所有标记的邮件都会复制到“ 需后续工作”文件夹中,并且标记的邮件总数会如下图所示显示:

doc count flagged items 3

a name="a2"> 使用VBA代码分别统计所有帐户中标记的邮件/联系人/任务的数量

如果您想分别统计所有标记项目(例如Outlook中的邮件、联系人和任务)的数量,以下VBA代码可以帮助您完成此任务。

1. 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。

2. 然后,点击“插入” > “模块”,将以下代码复制并粘贴到打开的空白模块中,请参见截图:

VBA代码:统计Outlook中标记次数的数量:

Dim GSeparateCount, GMailCount, GContactCount, GTaskCount As Long
Sub CountFlaggedItems()
Dim xStore As Outlook.Store
Dim xTotalCount As Long
Dim xPrompt As String
Dim xFolder As Folder
Dim i, k As Integer
On Error Resume Next
xTotalCount = 0
GMailCount = 0
GContactCount = 0
GTaskCount = 0
For Each xStore In Application.Session.Stores
    For Each xFolder In xStore.GetRootFolder.Folders
       Call ProcessFolders(xFolder)
    Next
Next
xTotalCount = GMailCount + GContactCount + GTaskCount
xPrompt = xTotalCount & " items have been flagged, as follows: " & Chr(10) & Chr(10) & "Emails: " & GMailCount & Chr(10) & "Contacts: " & GContactCount & Chr(10) & "Tasks: " & GTaskCount
MsgBox xPrompt, vbInformation + vbOKOnly, "Kutools for Outlook"
End Sub
Sub ProcessFolders(ByVal CurFolder As Outlook.Folder)
Dim xSubfolder As Outlook.Folder
Dim xItem As Object
Dim i, k As Integer
On Error Resume Next
For i = CurFolder.Items.Count To 1 Step -1
    Set xItem = CurFolder.Items.item(i)
    Select Case xItem.Class
        Case olMail, olPost, olSharing
            If xItem.IsMarkedAsTask = True Then
                GMailCount = GMailCount + 1
            End If
        Case olContact, olDistList
            If xItem.IsMarkedAsTask = True Then
                GContactCount = GContactCount + 1
            End If
        Case olTask
            If CurFolder.DefaultItemType = olTaskItem Then
            GTaskCount = GTaskCount + 1
            End If
    End Select
Next i
If CurFolder.Folders.Count > 0 Then
        For k = CurFolder.Folders.Count To 1 Step -1
            Set xSubfolder = CurFolder.Folders.item(k)
            Call ProcessFolders(xSubfolder)
        Next k
    End If
End Sub
doc count flagged items 4

3. 然后按 F5 键运行此代码,会弹出一个提示框,告诉您所有标记项目的总数量,如下图所示:

doc count flagged items 5

统计Outlook中今天的、昨天的、已读、未读、总项目数量...

借助 Kutools for Outlook 强大的统计功能,您可以根据日期、选中项目、已读、未读等需求获取项目数量。

doc count flagged items 6
Kutools for Outlook:包含70多种实用且免费的Outlook插件,立即下载免费版本

最佳 Office 办公效率工具

重磅消息:Kutools for Outlook 推出免费版本!

体验全新 Kutools for Outlook 免费版,70 多个强大功能,永久免费使用!点击立即下载!

🤖 Kutools AI 利用先进的AI技术轻松处理邮件,包括答复、总结、优化、扩展、翻译和撰写邮件。

📧 邮件自动化自动答复(支持POP和IMAP) /计划发送邮件 /发送邮件时根据规则自动抄送密送 / 自动转发(高级规则) / 自动添加问候语 / 自动将群发邮件拆分为单独邮件 ...

📨 邮件管理撤回邮件 / 按主题等方式阻止诈骗邮件 / 删除重复邮件 / 高级搜索 / 整合文件夹 ...

📁 附件专家批量保存 / 批量拆离 / 批量压缩 / 自动保存 / 自动拆离 / 自动压缩 ...

🌟 界面魔法😊更多精美个性表情 /重要邮件来临时提醒您 / 最小化而非关闭 Outlook ...

👍 一键高效操作带附件全部答复 /反钓鱼邮件 / 🕘显示发件人时区 ...

👩🏼‍🤝‍👩🏻 联系人与日历从选中的邮件批量添加联系人 / 将联系人组拆分为多个独立组 / 移除生日提醒 ...

使用 Kutools,支持英语、西班牙语、德语、法语、中文及40 多种其他语言,满足您的语言偏好!

一键解锁 Kutools for Outlook。无需等待,立即下载,提升办公效率!

kutools for outlook features1 kutools for outlook features2