2010-02-25 1 views
3

В ответ на сообщение электронной почты с темой «тест», с этим кодом ...Gmail как «Отправить и архивировать» в Outlook. Как добраться до «родительского» электронной почты при ответе

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) 
    If TypeName(Item) = "MailItem" Then 
    Debug.Print Item.Subject 
    Debug.Print Item.Parent 
    End If 
End Sub 

... возвращает это.

Входящих
RE: Тест

Я ищу, чтобы добраться до «теста», который является электронной почтой будет ответ на так что он может быть автоматически .Привести (d) в папку архива ,

ответ

2

Это было бы лучше в Outlook 2010, я думаю. Для более ранних версий, я полагаю, вы хотите этот код, который цитировал непосредственно из http://www.outlookcode.com/codedetail.aspx?id=1714

Function FindParentMessage(msg As Outlook.MailItem) _ 
      As Outlook.MailItem 
    Dim strFind As String 
    Dim strIndex As String 
    Dim fld As Outlook.MAPIFolder 
    Dim itms As Outlook.Items 
    Dim itm As Outlook.MailItem 
    On Error Resume Next 
    strIndex = Left(msg.ConversationIndex, _ 
        Len(msg.ConversationIndex) - 10) 
    Set fld = Application.Session.GetDefaultFolder(olFolderInbox) 
    strFind = "[ConversationTopic] = " & _ 
       Chr(34) & msg.ConversationTopic & Chr(34) 
    Set itms = fld.Items.Restrict(strFind) 
    Debug.Print itms.Count 
    For Each itm In itms 
     If itm.ConversationIndex = strIndex Then 
      Debug.Print itm.To 
      Set FindParentMessage = itm 
      Exit For 
     End If 
    Next 
    Set fld = Nothing 
    Set itms = Nothing 
    Set itm = Nothing 
End Function 
+0

Remou. Вы не смогли попробовать этот код? Я не могу заставить его работать, и отлаживать его почти невозможно, поскольку он, по-видимому, бросает ошибки случайным образом. Удивление, если это только я. – GollyJer

+0

Да, я попробовал, но в бета-версии Outlook 2010. У меня есть более ранняя версия, но она недоступна до завтрашнего дня (WET, UTC + 0) – Fionnuala

+0

Хорошо, в Outlook 2000 ConversationIndex хранится в другом формате, поэтому код не будет соответствовать 2000 году. Я ищу дополнительную информацию. Какая ошибка вы получаете? – Fionnuala

2
Item.ConversationTopic 

этого свойство, которое вы ищете.

+0

В конечном итоге это была собственность, но ответ Remou получил полную работу. Спасибо, член. – GollyJer

+0

Согласовано. И это хороший ответ. Я подумал, что было бы неплохо отделить пшеницу от мякины, если кому-то нужен только быстрый нападающий. –

Смежные вопросы