设置收到的邮件(已读或未读)的规则

设置收到的邮件(已读或未读)的规则

我需要一些有关 Outlook 2010 的建议。

有这种情况: - 一个网络邮件帐户由几个人使用(使用网络浏览器或电话访问) - 一台装有 MS Outlook 2010 客户端的计算机连接到此网络邮件(通过 IMAP)

我的问题是: - 是否可以设置这样的规则,将任何收到的电子邮件复制到给定的文件夹?

当前问题: - 可以设置一条规则,将收到的电子邮件复制到给定的文件夹,但该电子邮件必须标记为“未读”...如果此电子邮件已被其他人在其他设备上阅读,例如通过手机使用网络邮件访问;打开 Outlook 后,此邮件将不会被复制到该给定文件夹。

请问您知道如何解决这个问题吗?

答案1

以下 VBA 代码将移动传入电子邮件的副本并将其标记为未读

创建规则并应用于我收到的消息 -> 下一步 -> 下一步 -> 运行脚本

Option Explicit
Public Sub MoveItems(olItem As Outlook.MailItem)
    Dim olApp As New Outlook.Application
    Dim olNameSpace As Outlook.NameSpace
    Dim olInbox As Outlook.MAPIFolder
    Dim olDestFolder As Outlook.MAPIFolder
    Dim olItems As Outlook.Items
    Dim CopyItem As Object

    Set olNameSpace = olApp.GetNamespace("MAPI")
    Set olInbox = olNameSpace.GetDefaultFolder(olFolderInbox)
    Set olItems = olInbox.Items

    '// loop
    While TypeName(olItem) <> "Nothing"
        Set olDestFolder = olInbox.Folders("TEMP") '// Folder Name
        Set CopyItem = olItem.Copy
        olItem.Move olDestFolder
        olItem.UnRead = True '// <- Mark UnRead
        Set olItem = olItems.FindNext
    Wend
    '// Clean up
    Set olNameSpace = Nothing
    Set olInbox = Nothing
    Set olDestFolder = Nothing
    Set olItems = Nothing
    Set olItem = Nothing
    Set CopyItem = Nothing
End Sub

相关内容