有時,您可能想要計算 Outlook 中來自特定發件人的電子郵件總數。 本文將向您介紹一種使用 Outlook VBA 快速獲取總數的便捷方法。
由於某些原因,例如數據統計,您可能需要統計來自特定發件人的電子郵件總數。 毫無疑問,如果您的郵件數量眾多,手動逐個計數會比較麻煩且容易出錯。 在這種情況下,為什麼不遞歸到 VBA? 這裡是詳細的操作和根據 VBA 代碼。
獲取特定文件夾中來自特定發件人的電子郵件總數
- 從一開始tart Outlook並切換到“ Developer”選項卡。
- 然後單擊此選項卡下的“Visual Basic”按鈕。

- 接下來在彈出的“Microsoft Visual Basic for Applications”窗口中,您可以打開一個未使用的模塊,然後將以下VBA代碼複製到其中。
Sub CountEmailsfromSpecificSenderinCurrentFolder()
Dim objSelection As Selection
Dim objSelectedMail As MailItem
Dim strSenderEmailAddress As String
Dim objCurrentFolder As Folder
Dim objItem As Object
Dim objVariant As Variant
Dim i As Long
Dim strPrompt As String
Dim nResponse As Integer
Set objSelection = Outlook.Application.ActiveExplorer.Selection
i = 0
If TypeOf objSelection.Item(1) Is MailItem Then
Set objSelectedMail = objSelection.Item(1)
strSenderEmailAddress = objSelectedMail.SenderEmailAddress
Set objCurrentFolder = Outlook.Application.ActiveExplorer.CurrentFolder
For Each objItem In objCurrentFolder.Items
Set objVariant = objItem
If (objVariant.Class = olMail) And (objVariant.SenderEmailAddress = strSenderEmailAddress) Then
i = i + 1
End If
Next
End If
strPrompt = "There are " & i & " emails from " & objSelectedMail.SenderName & " in the current " & objCurrentFolder.Name & " folder."
nResponse = MsgBox(strPrompt, vbOKOnly + vbInformation, "Count Emails from Specific Sender")
End Sub
- 隨後,關閉當前窗口以返回 Outlook 主屏幕。
- 之後,您可以繼續將新宏添加到快速訪問工具欄。
- 首先,單擊快速訪問工具欄中的向下箭頭,然後選擇“更多命令”。
- 然後按照下圖所示的順序將宏添加到快速訪問工具欄。
- 最後你可以試試這個按鈕。
- 首先,打開某個文件夾並選擇來自特定發件人的電子郵件。
- 然後單擊快速訪問工具欄中的按鈕。
- 最後,您將收到一條消息,告訴您當前文件夾中來自特定發件人的電子郵件數量。
遞歸遍歷所有子文件夾
上面的部分只是介紹瞭如何獲取一個郵件文件夾中來自特定發件人的所有郵件項目的總數。 如果您在收件箱下有許多子文件夾,並且您還想在子文件夾中包含收到的電子郵件,則需要遞歸地枚舉所有這些子文件夾。 這種情況可以參考我們博客的另一篇文章——”如何通過 VBA 在 Outlook 中遞歸遍歷文件夾樹“。
永遠不要相信不可靠的 Outlook 修復工具
由於 Outlook 容易出錯,因此許多用戶習慣於保持 Outlook錯誤修復工具 便利。 但是在今天的市場上,這種不可靠的工具太多了。 所以大家在選擇的時候一定要慎重。 一旦您嘗試通過不可靠的工具修復錯誤,很可能會導致更糟的情況。
作者簡介:
Shirley Zhang是的數據恢復專家 DataNumen,Inc.是數據恢復技術的全球領導者,包括 mdf問題修復 和Outlook修復軟件產品。 欲了解更多信息,請訪問 萬維網。datanumen.COM


