【问题标题】:VBA Outlook Macro: How many E-Mails does a Folder contain?VBA Outlook 宏:一个文件夹包含多少个电子邮件?
【发布时间】:2015-02-07 00:38:58
【问题描述】:

目标:一个 Outlook-VBA 宏,它查看每个可用文件夹并检查它是否包含邮件消息。如果没有,用户可以决定删除该文件夹。有没有办法做到这一点?

Sub findAndDeleteEmptyFolders()

Dim Folders As Outlook.Folders
Dim F As Outlook.MAPIFolder
Dim FoundMail As Boolean

Set Folders = Application.Session.Folders


For Each F In Folders
    Dim FItems As Integer
    FItems = F.Items.count

    MsgBox ("Der Ordner: " & F.Name & " hat " & FItems & " Items")
Next

End Sub

所以这段代码只是查看顶部文件夹,而不是像“收件箱”这样的文件夹。它显示每个活动邮件帐户都有 0 封邮件,但其中一些邮件大约有 9000 封邮件……我怎样才能更深入地查看文件夹(子文件夹?)。

【问题讨论】:

  • 是的,有办法。但是,如果您希望我们提供帮助,您将必须比“工作不太好”更精确。请编辑您的问题以清楚地表明您遇到了什么问题。
  • 完成,先生!谢谢你的建议。
  • 我自己刚刚找到了一个解决方案,但我仍然对新想法持开放态度:)
  • 为了其他用户的利益,请将您的解决方案发布为答案。这样您还可以获得有关您的解决方案的反馈。

标签: vba outlook


【解决方案1】:

遍历 Outlook 中的所有文件夹和项目并不是一个好主意。如果您需要查找满足您的条件的项目,您可以使用 Find/FindNext 或 Restrict 方法。以下文章深入介绍了它们:

但如果您需要在所有文件夹中查找项目,我建议您使用 Application 类的 AdvancedSearch 方法。有关更多信息,请参阅Advanced search in Outlook programmatically: C#, VB.NET

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-05
    • 2016-02-05
    • 1970-01-01
    • 2019-05-20
    相关资源
    最近更新 更多