7

Сообщения успешно копируются в другую папку, но отображаются как непрочитанные.

"Пометить как прочитанное" действительно отображается как опция фильтра в списке действий при создании правила, которое применяется к входящим сообщениям, но я не вижу его при создании правила, применяемого к сообщениям OUTGOING . Как я могу сделать это?

Вот полный текст моей существующей строки описания правила:

Apply this rule after I send the message
on this machine only
move a copy to the Archive folder

Обновить:
@ xxl3ww отмечает, что есть сценарии VB, которые могут это сделать. Я предпочел бы не платить за один из них, хотя. Любые бесплатные альтернативы, которые кто-нибудь знает?

3 ответа3

4

Вам нужно будет включить макросы для работы следующего кода. В меню «Инструменты»> «Макросы» выберите «Предупреждения для всех макросов» или «Без проверок безопасности».

Нажмите Инструменты> Макросы> Редактор Visual Basic

Скопируйте и вставьте следующее:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Item.UnRead = False
End Sub

Это оно! (Вместе с вашим существующим правилом сообщений)

0

Создайте правило с помощью мастера правил (инструменты -> правила и оповещения). На третьем экране можно пометить сообщение как прочитанное. Возможно, вам придется прокрутить немного вниз, чтобы найти правильный флажок.

Хотя это технически не является "исходящим" правилом, оно будет работать, если запустить его вручную. Я не думаю, что в офис встроен способ автоматически выполнять проверку.

0

Вам нужно настроить его так, чтобы он совпадал с именами вашей папки / почтового ящика, но при этом новые добавленные элементы (например, электронные письма, перемещаемые по вашему правилу) будут установлены следующим образом:


Option Explicit
'##############################################
'### all code for the ThisOutlookSession module
'### Module level Declarations
'expose the items in the target folder to events
Dim WithEvents TargetFolderItems As Items

'###############################################
Private Sub Application_Startup()
'some startup code to set our "event-sensitive"
'items collection

Dim myMailbox As String, myFolder As String

'You need to set these
myMailbox = "Mailbox - My Name"
myFolder = "Archive Folder Name"

Dim ns As Outlook.NameSpace

Set ns = Application.GetNamespace("MAPI")
Set TargetFolderItems = ns.Folders(myMailbox).Folders(myFolder).Items

End Sub

'#################################################
'### this is the ItemAdd event code
Sub TargetFolderItems_ItemAdd(ByVal Item As Object)
'when a new item is added to our "Testing Folder"
'we can process it
Dim myEmail As MailItem
Set myEmail = Item
myEmail.UnRead = False
End Sub

'#################################################
Private Sub Application_Quit()

Dim ns As Outlook.NameSpace
Set TargetFolderItems = Nothing
Set ns = Nothing

End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .