Определить конец нового сообщения в теле сообщения электронной почты

Когда сообщение получает ответ или пересылается, предыдущий поток добавляется к вашему новому письму, помещая перед ним то есть ---- оригинальное сообщение.

Outlook делает то же самое с текстовыми сообщениями, но с HTML-письмами показывает строку, сопровождаемую From: ..

Поскольку outlook показывает грань между этими сообщениями, я считаю, что можно вычесть эти сообщения с помощью VBA. Но как?

Цель: когда пользователь отправляет письмо (Application_ItemSend), я хочу отсканировать сообщение на наличие определенных слов. Но мне все равно, если это произойдет в предыдущем сообщении, я только хочу отсканировать только что напечатанное сообщение.

Пример ниже будет работать при ответе на электронное письмо в Outlook, когда оно в тексте (и Outlook на английском языке!). Но это не будет работать при отправке электронного письма в формате HTML.

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
  Dim EndOfMsg As Integer
  Dim myMsg as String

  EndOfMsg = InStr(Item.Body, "-----Original Message-----")
  If EndOfMsg = 0 Then 
    myMsg = Item.Body
  Else 
    myMsg = Left(Item.Body, EndOfMsg)
  End If

  MsgBox myMsg
End Sub

Так что мне нужен какой-нибудь токен, чтобы поделить, правильно. Но что это за токен? Все, что есть между myMsg и более старыми сообщениями, является двойнымvbCrLf, Так же, как когда я ввожу новую строку в моем сообщении ... нет ничего уникального!

Ответы на вопрос(3)

Ваш ответ на вопрос