Субъектная сортировка Outlook после удаления внешних тегов - PullRequest
0 голосов
/ 24 марта 2020

Я ненавижу внешние теги в темах электронной почты, поэтому написал макрос (ниже), чтобы удалить их (спасибо этому сайту за все примеры, которым я следовал). На моей старой работе это исправило все. На моей новой работе макрос все еще работает, но письма больше не сортируются по темам (описание ниже). Любое электронное письмо, имеющее внешний тег, все равно отказывается сортировать его, даже если темы электронного письма выглядят одинаково. Чего мне не хватает?

Описания электронной почты

  • Электронная почта A - Оригинальное электронное письмо, отправленное от меня, b cc 'в мой почтовый ящик
  • Электронная почта B - An внешний ответ на электронную почту A, которая включает в себя внешний тег
  • Email C - мой собственный ответ на электронную почту B, которая содержит внешний тег, b cc ', введенный в мой почтовый ящик

Описание проблемы

  • Электронная почта B не сортируется с электронной почтой A
  • Когда внешний тег удаляется из электронной почты B, она по-прежнему не сортируется с электронной почтой A
  • Сообщения электронной почты B и C правильно сортируются, когда внешние теги не удаляются. Электронная почта C не сортируется должным образом с электронной почтой A
  • Если я удалю тег External из обоих электронных писем B и C, они больше не будут правильно сортироваться вместе. Электронная почта C теперь будет правильно сортироваться с электронной почтой A

Макрокод


Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myitems As Outlook.Items
Dim myitem As Object

Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myitems = myInbox.Items
Found = False

For Each myitem In myitems
    If myitem.Class = olMail Then
        If InStr(1, myitem.Subject, "[EXTERNAL] ") > 0 Then
            myitem.Subject = Replace(myitem.Subject, "[EXTERNAL] ", "", [vbTextCompare])
            myitem.Save
        End If
    End If
Next myitem

Set myOlApp = Nothing

End Sub
...