Quy tắc Outlook - Di chuyển thư ĐỌC và Cũ hơn X ngày


12

Outlook 2010. Muốn tạo quy tắc di chuyển tất cả thư từ hộp thư đến của tôi sang thư mục khác:

  • Đã được đọc
  • Lớn hơn X ngày

Tôi đã xem Tự động lưu trữ, nhưng dường như không cho phép tôi cụ thể với tiêu chí này.


Ai đó có thể chuyển tiếp điều này đến nhóm Microsoft Outlook không?
Jayan

Câu trả lời:


8

Cách tốt nhất mà tôi đã tìm thấy để làm điều này vào lúc này là tạo Thư mục tìm kiếm mới với tiêu chí tùy chỉnh, ví dụ như với các mục được sửa đổi vào hoặc trước một ngày nhất định. Sau đó, tôi nhấp chuột phải vào thư mục và chọn 'Xóa tất cả' để gửi tất cả các mục trong Thư mục tìm kiếm vào thùng.


Đây không phải là một câu trả lời, vì các tin nhắn không được chuyển đến một thư mục, chúng chỉ được chuyển đến thùng .
Sao lưu dự phòng

5

Các thư mục tìm kiếm là câu trả lời, tuy nhiên OP đã hỏi về thư cũ hơn một ngày cụ thể. Nếu bạn sử dụng "sửa đổi tuần trước" thì nó sẽ hiển thị mọi thứ trong tuần trước và lọc ra những thứ cũ hơn 1 tuần. Đối với điều ngược lại, sử dụng ngôn ngữ như:

  • 8 ngày trước
  • 1 tuần trước
  • Vân vân...

nhập mô tả hình ảnh ở đây


Tuyệt vời, không biết rằng bạn có thể viết ngôn ngữ tự nhiên cho giá trị!
RipperDoc

4

Tôi đã tìm kiếm một cái gì đó tương tự. Tôi phải sử dụng macro vì lưu trữ tự động bị vô hiệu hóa cho cài đặt của tôi. Đây là những gì tôi nghĩ ra:

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

Macro này được gắn vào giai đoạn cuối của vòng đời của ứng dụng; nó chạy khi Outlook khởi động. Bạn cũng có thể muốn ký nó (và tin tưởng chữ ký của bạn) để bạn nhận được khiếu nại bảo mật.

HTH

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.