У всех нас есть те люди, которые решили добавить тонну ненужной надписи в свои электронные письма и сделать ее практически невозможной для чтения. То, что я хотел бы иметь, - это правило в Outlook 2010, согласно которому, как только электронное письмо приходит от определенного человека (или группы), оно автоматически преобразует его в обычный текст вместо HTML. Есть идеи?
4 ответа
Если вы обеспокоены дисплеем и не нуждаетесь в преобразовании, см. Здесь для получения инструкций "Читать как обычный текст" http://support.microsoft.com/kb/831607
Я "решил" эту же проблему, назначив почтовое правило, которое выбирает только конкретные почтовые сообщения и переносит его в "Хлам". В барахле все электронные письма конвертируются в обычный текст.
Таким образом, я читаю эти проблемные электронные письма в своей папке нежелательной почты, что намного лучше, чем статус-кво внешнего вида, "не отвечающего" ни на минуту, каждый раз, когда я случайно просматриваю проблемное письмо.
РЕДАКТИРОВАТЬ: я также добавил оповещение уведомления к правилу почты, чтобы я не пропустил письмо
Вы можете редактировать сообщение с VBA. Согласно MSDN, если вы установите _MailItem.BodyFormat
для olFormatPlain
все форматирование.
Эта статья об использовании VBA в качестве более мощной альтернативы правилам фильтрации Outlook должна направить вас в правильном направлении.
Правило, включающее необходимый VBA, можно найти здесь, с предупреждениями ItemAdd и NewMailEx.
http://www.outlookcode.com/article.aspx?id=62
Sub ConvertToPlain(MyMail As MailItem)
Dim strID As String
Dim objMail As Outlook.MailItem
strID = MyMail.EntryID
Set objMail = Application.Session.GetItemFromID(strID)
objMail.BodyFormat = olFormatPlain
objMail.Save
Set objMail = Nothing
End Sub
Для решений ItemAdd и NewMailEx вы можете ограничить конверсию, протестировав SenderName или SenderEmailAddress следующим образом.
If objMail.SenderName = "Mailer, HTML" Then
objMail.BodyFormat = olFormatPlain
objMail.Save
End if
Вы можете найти SenderName с этим. (По неизвестным причинам один из моих отправителей не имеет SenderEmailAddress.)
Sub Addresses_CurrentItem()
Dim olMail As Object
On Error Resume Next
Set olMail = ActiveInspector.currentItem
If olMail Is Nothing Then
' might be in the explorer window
If (ActiveExplorer.selection.Count = 1) And _
(ActiveExplorer.selection.Item(1).Class = olMail) Then
Set olMail = ActiveExplorer.selection.Item(1)
End If
End If
On Error GoTo 0
If olMail Is Nothing Then
MsgBox "Problem." & vbCr & vbCr & "Try again " & _
"under one of the following conditions:" & vbCr & _
"-- You are viewing a single email message." & vbCr & _
"-- You have only one message selected.", _
vbInformation
Exit Sub
End If
If TypeOf olMail Is MailItem Then
Debug.Print " Sender : " & olMail.SenderName
Debug.Print " SenderEmailAddress: " & olMail.SenderEmailAddress & vbCr
End If
End Sub