กฎของ Outlook - ย้ายจดหมายที่อ่านแล้วและเก่ากว่า X วัน


12

Outlook 2010 ต้องการสร้างกฎที่ย้ายจดหมายทั้งหมดจากกล่องจดหมายของฉันไปยังโฟลเดอร์อื่น:

  • ได้รับการอ่าน
  • เก่ากว่า X วัน

ฉันกำลังดูการเก็บถาวรอัตโนมัติ แต่ดูเหมือนว่าฉันจะไม่เจาะจงเกณฑ์นี้


มีคนส่งต่อไปยังทีม Microsoft Outlook ได้ไหม
Jayan

คำตอบ:


8

วิธีที่ดีที่สุดที่ฉันพบในขณะนี้คือการสร้างโฟลเดอร์การค้นหาใหม่ที่มีเกณฑ์ที่กำหนดเองเช่นกับรายการที่ปรับเปลี่ยนในหรือก่อนวันที่กำหนด ฉันคลิกขวาที่โฟลเดอร์แล้วเลือก 'ลบทั้งหมด' ซึ่งจะส่งรายการทั้งหมดในโฟลเดอร์การค้นหาไปยังถังขยะ


นี่ไม่ใช่คำตอบเนื่องจากข้อความไม่ถูกย้ายไปยังโฟลเดอร์ข้อความจะถูกย้ายไปยังถังขยะเท่านั้น
สำรองข้อมูล Pro

5

โฟลเดอร์การค้นหาเป็นคำตอบอย่างไรก็ตาม OP ได้ถามเกี่ยวกับจดหมายที่เก่ากว่าวันที่ระบุ หากคุณใช้ "แก้ไขเมื่อสัปดาห์ที่แล้ว" มันจะแสดงทุกอย่างภายในสัปดาห์ที่ผ่านมาและกรองสิ่งที่เก่ากว่า 1 สัปดาห์ สำหรับผกผันนั้นให้ใช้ภาษาเช่น:

  • 8 วันที่แล้ว
  • 1 สัปดาห์ที่ผ่านมา
  • ฯลฯ ...

ป้อนคำอธิบายรูปภาพที่นี่


เยี่ยมมากไม่รู้ว่าคุณสามารถเขียนภาษาธรรมชาติเพื่อความคุ้มค่า!
RipperDoc

4

ฉันกำลังมองหาบางสิ่งที่คล้ายกัน ฉันต้องใช้แมโครเนื่องจากการเก็บถาวรอัตโนมัติถูกปิดใช้งานสำหรับการติดตั้งของฉัน นี่คือสิ่งที่ฉันมาด้วย:

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

มาโครนี้เชื่อมต่อกับเฟสสุดท้ายของวงจรชีวิตของแอปพลิเคชัน มันจะทำงานเมื่อ Outlook เริ่มทำงาน คุณอาจต้องการลงชื่อ (และเชื่อถือลายเซ็นของคุณ) เพื่อรับข้อร้องเรียนด้านความปลอดภัย

HTH

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.