设置 Outlook 规则,在 14 天后将电子邮件移动到文件夹

设置 Outlook 规则,在 14 天后将电子邮件移动到文件夹

我想将 Outlook 收件箱中的邮件保留一段时间,以便它们仍然可见。一段时间后(例如 14 天),我想将它们移至另一个文件夹storage

能通过规则来实现吗?

笔记:

  1. 到目前为止,我制定了一条规则将副本移至文件夹storage。但我错过了 14 天后删除的部分。
  2. 在 gmail 中,我可以通过应用程序脚本来实现这一点,脚本每天都会运行。此外,由于 gmail 使用标签而不是文件夹,我不必移动副本,只需将标签添加到同一封电子邮件中即可。14 天后,我的脚本从电子邮件中storage删除了标签。Inbox

编辑

根据@squillman的评论,使用VBA可能可以实现。我想这可能是一个有趣的附加组件。

答案1

您可以自动执行此操作,但仅限于存档文件夹。此选项称为“自动存档”,并在文章中有完整描述 如何在 Outlook 中移动超过 n 天/周/月的项目?

要完全回答您的问题,需要 VBA 宏。您可以在文章中找到此类 VBA 宏 宏来移动过期的电子邮件,用于 MAPI 电子邮件服务器。宏本身引用如下,但本文包含几个变体:

  • VBA 宏检查默认收件箱中超过 7 天的电子邮件并将其移动到收件箱的子文件夹中Old
  • 将消息移动到新数据文件的宏。
  • 用于移动已回复或转发的消息的宏。

文章最后解释了如何使用宏。

下面引用了上述第一种变体。您需要将 更改为714并且可以更改Old 子文件夹的名称。

Sub MoveAgedMail()

    Dim objOutlook As Outlook.Application
    Dim objNamespace As Outlook.NameSpace
    Dim objSourceFolder As Outlook.MAPIFolder
    Dim objDestFolder As Outlook.MAPIFolder
    Dim objVariant As Variant
    Dim lngMovedItems As Long
    Dim intCount As Integer
    Dim intDateDiff As Integer
    Dim strDestFolder As String
    
    Set objOutlook = Application
    Set objNamespace = objOutlook.GetNamespace("MAPI")
    Set objSourceFolder = objNamespace.GetDefaultFolder(olFolderInbox)
    
    ' use a subfolder under Inbox
    Set objDestFolder = objSourceFolder.Folders("Old")

    For intCount = objSourceFolder.Items.Count To 1 Step -1
        Set objVariant = objSourceFolder.Items.Item(intCount)
        DoEvents
        If objVariant.Class = olMail Then
            
             intDateDiff = DateDiff("d", objVariant.SentOn, Now)
             
            ' I'm using 7 days, adjust as needed. 
            If intDateDiff > 7 Then

              objVariant.Move objDestFolder
              
              'count the # of items moved
               lngMovedItems = lngMovedItems + 1

            End If
        End If
    Next
    
    ' Display the number of items that were moved.
    MsgBox "Moved " & lngMovedItems & " messages(s)."
Set objDestFolder = Nothing
End Sub

答案2

这不是什么规则(我也从来没有用过这个),但在 Office Outlook 365 中(也许在其他版本中),您可以在电子邮件文件夹中设置保留期(但遗憾的是,除非您知道如何添加自定义保留期,否则不能设置两周)。我的系统似乎被锁定了,但您的系统可能没那么严重。

您可以在这里访问: Outlook 电子邮件保留

答案3

据我所知,您提到的两个功能只能实现一个。要将电子邮件移动到文件夹,您可以像您所做的那样创建规则。要将电子邮件在 14 天后移动,正如 harrymc 提到的,我们可以尝试自动存档。

相关内容