Regla de Outlook: mover el correo que está LEÍDO y tiene más de X días

12

Outlook 2010. Desea crear una regla que mueva todo el correo de mi bandeja de entrada a otra carpeta:

  • Ha sido leido
  • Tiene más de X días

Estaba mirando el archivo automático, pero no parece que me permita ser tan específico con mis criterios.

Simón
fuente
¿Alguien podría enviar esto al equipo de Microsoft Outlook?
Jayan

Respuestas:

8

La mejor manera que he encontrado para hacer esto en este momento es crear una nueva Carpeta de búsqueda con criterios personalizados, por ejemplo, con elementos modificados en una fecha determinada o antes. Luego hago clic derecho en la carpeta y elijo 'Eliminar todo' que envía todos los elementos de la carpeta de búsqueda a la papelera.

León
fuente
Esto no es una respuesta, porque los mensajes no se mueven a una carpeta, solo se mueven a la papelera .
Pro Backup
5

Las carpetas de búsqueda son la respuesta, sin embargo, el OP preguntó sobre el correo anterior a una fecha en particular. Si usa "modificado la semana pasada", muestra todo en la última semana y filtra cosas anteriores a 1 semana. Para lo inverso, usa un lenguaje como:

  • hace 8 días
  • Hace 1 semana
  • etc ...

ingrese la descripción de la imagen aquí

Gato plano
fuente
¡Genial, no sabía que se puede escribir lenguaje natural por el valor!
RipperDoc
4

Había estado buscando algo similar. Tengo que usar una macro ya que el archivo automático está desactivado para mi instalación. Esto es lo que se me ocurrió:

Option Explicit
Private Sub Application_MAPILogonComplete()
    ' this runs on app startup
    Const MSG_AGE_IN_DAYS = 7

    Dim oFolder As Folder
    Dim oFilteredItems As Outlook.Items
    Dim oItem As MailItem
    Dim oDate As Date

    oDate = DateAdd("d", -MSG_AGE_IN_DAYS, Now())
    oDate = Format(oDate, "mm/dd/yyyy")

    ' you can use this command to select a folder
    'Set oFolder = Application.Session.PickFolder

    Set oFolder = Me.Session.Folders.GetFirst

    ' shows all the folder names
    'For Each fldr In oFolder.Folders
    '    Debug.Print fldr.Name
    'Next fldr

    ' this was the sub-folder I wanted to cleanup.
    Set oFolder = oFolder.Folders("Storage").Folders("batch runs")

    Debug.Print "checking " & oFolder.FolderPath
    Debug.Print "for msgs older than " & oDate

    ' you can modify the filter to suit your needs
    Set oFilteredItems = oFolder.Items.Restrict("[Received] <= '" & oDate & "' And [Unread] = True")

    Debug.Print "removing " & oFilteredItems.Count & " items"

    While oFilteredItems.Count > 0
        Set oItem = oFilteredItems.GetFirst
        Debug.Print "   " & oItem.UnRead & " " & oItem.Subject

        ' the remove method permanently deletes the item.
        oFilteredItems.Remove 1
        'Debug.Print oFilteredItems.Count & " items left"
    Wend

    Debug.Print ". end"

    Set oFolder = Nothing
    Set oFilteredItems = Nothing
    Set oItem = Nothing
End Sub

Esta macro se adjunta a la última fase del ciclo de vida de la aplicación; se ejecuta cuando se inicia Outlook. Probablemente también desee firmarlo (y confiar en su firma) para que pueda recibir quejas de seguridad.

HTH

usuario final
fuente