2012-01-13 40 views
1

我想獲得對話ID(它在消息的標題中)。如何從選定的電子郵件中獲取對話ID?

我會假設在outlook庫中它在MailItem類和ConversationID成員中。對於如何從選定的電子郵件,公開電子郵件中獲取該信息,或者在NewMail事件啓動時發生事件,我都感到茫然。

任何幫助將非常感謝!

+1

結帳http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._mailitem.getconversation.aspx和http://msdn.microsoft.com/en-us/library/ microsoft.office.interop.outlook._mailitem.conversationid.aspx。在2010年之前,您應該查看http://msdn.microsoft.com/zh-CN/library/microsoft.office.interop.outlook._mailitem.conversationtopic.aspx – Nat 2012-01-13 02:09:42

回答

2

這個例子將顯示一個消息框,對話ID:

Sub GetConvID() 

Dim obj As Object 
Dim msg As Outlook.mailItem 

Set obj = GetCurrentItem 

If TypeName(obj) = "MailItem" Then 
    Set msg = obj 
    MsgBox msg.ConversationID 
End If 

End Sub 

Function GetCurrentItem() As Object 
' returns reference to current item, either the one 
' selected (Explorer), or the one currently open (Inspector) 

    Select Case True 
    Case IsExplorer(Application.ActiveWindow) 
    Set GetCurrentItem = ActiveExplorer.Selection.item(1) 
    Case IsInspector(Application.ActiveWindow) 
    Set GetCurrentItem = ActiveInspector.CurrentItem 
    End Select 

End Function 
Function IsExplorer(itm As Object) As Boolean 
    IsExplorer = (TypeName(itm) = "Explorer") 
End Function 
Function IsInspector(itm As Object) As Boolean 
    IsInspector = (TypeName(itm) = "Inspector") 
End Function 

關於NEWMAIL事件:

的NEWMAIL事件中,你想成爲 通知時的場景是非常有用的一封新的電子郵件到達。如果您想要處理收件箱中的 項目,請考慮使用收件箱中的項目集合 上的ItemAdd事件。 ItemAdd事件將一個 引用傳遞給添加到文件夾的每個項目。

要獲得此活動中選定電子郵件的參考,請使用ActiveExplorer.Selection.item(1)。要獲得對公開電子郵件的參考,請使用。

相關問題