ฉันดูสูงและต่ำสำหรับชิ้นส่วนเหล่านี้ทั้งหมดที่จำเป็นเพื่อให้ตัวกรองแบบง่าย ๆ นี้เกิดขึ้น ตัวกรอง procmail Unix นั้นใช้งานง่ายโดยการเปรียบเทียบ ตัวช่วยสร้าง Microsoft Outlook ทั้งหมดได้รับตัวกรองอย่างง่ายโดยใช้สัญลักษณ์แทน ในขณะที่เงื่อนไขการกรองอีเมลจำนวนมากที่ Microsoft มีให้ตามค่าเริ่มต้นจะไม่มีประโยชน์ใดที่สามารถเอาชนะความยืดหยุ่นและการปรับแต่งโค้ดที่ใช้งานได้
- เขียนรหัสของคุณ
Alt-F11 เปิดตัวโปรแกรมแก้ไขโค้ด VBA ดับเบิลคลิกที่ ThisOutlookSession เขียนรหัสของคุณ ในกรณีของฉันมันใช้ regex ในหัวเรื่องและย้ายไม่ใช่ไปที่ DefaultFolder แต่เป็น pst ของฉันเองในโฟลเดอร์ย่อย
Sub filter(Item As Outlook.MailItem)
Dim ns As Outlook.NameSpace
Dim MailDest As Outlook.Folder
Set ns = Application.GetNamespace("MAPI")
Set Reg1 = CreateObject("VBScript.RegExp")
Reg1.Global = True
Reg1.Pattern = "(.*Abc.20.*)"
If Reg1.Test(Item.Subject) Then
Set MailDest = ns.Folders("Personal Folders").Folders("one").Folders("a")
Item.Move MailDest
End If
End Sub
- เรียกใช้รหัสสำหรับอีเมลขาเข้าแต่ละรายการด้วยกฎ
ภายใต้กฎให้เลือก "จัดการกฎและการแจ้งเตือน ... " กฎใหม่จะมีลักษณะดังนี้
Apply this rule after the message arrives run Project1.ThisOutlookSession.filter
ในการรับสิ่งนี้สำหรับขั้นตอนที่ 1: เลือกเงื่อนไข: เพียงคลิกถัดไป ยืนยันว่าใช้กับข้อความทั้งหมดโดยคลิกตกลง สำหรับเลือกการกระทำเลือก "เรียกใช้สคริปต์" จากนั้นคลิกเพื่อเลือกสคริปต์ตัวกรองและเลือกถัดไปหรือเสร็จสิ้น สำหรับเลือกข้อยกเว้นคลิกถัดไปหรือเสร็จสิ้น ตั้งชื่อที่ดีเช่น vba-filter และทำเครื่องหมายเปิดกฎนี้ คลิกเสร็จสิ้น เนื่องจากมันไปยังโฟลเดอร์ในเครื่องคลิกตกลงเมื่อระบบขอให้ยืนยันว่ากฎนี้ใช้ไม่ได้กับอีเมลที่คุณตรวจสอบออนไลน์หรือจากอุปกรณ์อื่น คลิกตกลงไปที่กล่องโต้ตอบกฎและการแจ้งเตือน
- Outlook ไม่ชอบเมื่อแมโครไม่ได้ลงชื่อ เพื่อให้ตัวเองเข้าสู่ระบบมาโครของคุณสร้างใบรับรองและใช้