2008-09-18 37 views
5

Về cơ bản, chúng tôi có một quy tắc thiết lập để chạy tập lệnh khi phát hiện thấy một từ mã trong nội dung thư đến. Tập lệnh sẽ nối thêm tiêu đề chủ đề hiện tại với một từ ở phía trước. Ví dụ: Trước: "Thông báo thử nghiệm", Sau: "Dept - Test Message". Bất kỳ ý tưởng?Thêm tiêu đề chủ đề trong Outlook (VBA)

Trả lời

0

Không thử nghiệm:

mailItem.Subject = "Dept - " & mailItem.Subject 
mailItem.Save 
4

Hoặc nếu bạn cần cả một kịch bản:

Làm Chạy một kịch bản với MailItem như tham số.

Sub RewriteSubject(MyMail As MailItem) 

    Dim mailId As String 
    Dim outlookNS As Outlook.NameSpace 
    Dim myMailItem As Outlook.MailItem 

    mailId = MyMail.EntryID 
    Set outlookNS = Application.GetNamespace("MAPI") 
    Set myMailItem = outlookNS.GetItemFromID(mailId) 

    ' Do any detection here 

    With myMailItem 
     .Subject = "Dept - " & mailItem.Subject 
     .Save 
    End With 

    Set myMailItem = Nothing 
    Set outlookNS = Nothing 

End Sub 
+1

Tại sao bạn tạo biến mới cho thư và tra cứu bằng EntryID? Mailitem có sẵn trực tiếp cho các thủ tục như một tham số. – JimmyPena

0
Sub AppendSubject(MyMail As MailItem) 
    Dim strID As String 
    Dim mailNS As Outlook.NameSpace 
    Dim mailItem As Outlook.MailItem 

    strID = MyMail.EntryID 
    Set mailNS = Application.GetNamespace("MAPI") 
    Set mailItem = mailNS.GetItemFromID(strID) 
    mailItem.Subject = "Dept - " & mailItem.Subject 
    mailItem.Save 

    Set mailItem = Nothing 
    Set mailNS = Nothing 
End Sub 

chúng ta đang thiếu gì? EDIT: Doh! Bạn đã trả lời câu hỏi của chúng tôi với một tập lệnh đầy đủ ... Cảm ơn!

Các vấn đề liên quan