Então, você está procurando uma regra "Onde meu nome não está nos campos Para ou Cc", mas é a única regra que eles não têm no assistente. Espero ter isso correto.
Não conheço nenhum desses suplementos, mas é possível fazer o seu próprio. Este artigo do MSDN mostra como acessar o Outlook 2007 e criar um suplemento .
Ou você poderia fazer isso em macros VBA, na verdade ... aqui este que eu escrevi vai fazer o que você quiser, basta configurar as constantes ao seu gosto. No Outlook, abra o editor de macro (Alt + F11) e cole-o no módulo ThisOutlookSession. A menos que você tenha adicionado macros antes, ele deve estar vazio.
Você precisará ativar macros , se ainda não estiver, no menu Ferramentas - & gt ; Macros - > Segurança. Se definido em "Avisos para todas as macros", você será solicitado a cada vez que abrir o Outlook, o que é bom. Reabra o Outlook depois de salvar a macro.
'# [Outlook VBA custom mail mover by keyboardMonkey]
'# Checks new email if YOUR_NAME does not appear in the TO or CC list.
'# moves the message to DESTINATION_FOLDER.
'# Note: DESTINATION_FOLDER must be a child of the Inbox node, not a sibling.
Const YOUR_NAME As String = "Wesley"
Const DESTINATION_FOLDER As String = "testfolder"
'// hook into the outlook items events
Public WithEvents myOlItems As Outlook.Items
Public Sub Application_Startup()
' get the inbox item collection
Set myOlItems = Outlook.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
'// called on mail item add
Private Sub myOlItems_ItemAdd(ByVal Item As Object)
If TypeName(Item) = "MailItem" Then
' get strongly typed object
Dim mymail As MailItem
Set mymail = Item
' flags if our name appears in each of the fields
Dim name_in_to As Boolean
Dim name_in_cc As Boolean
name_in_to = InStrB(1, mymail.To, YOUR_NAME) > 0
name_in_cc = InStrB(1, mymail.CC, YOUR_NAME) > 0
'#Uncomment below to show mail item details
' MsgBox (mymail.Subject + " has me in TO: " + Str(name_in_to) + " and CC: " + Str(name_in_cc))
' are we mentioned in the header?
If (Not name_in_to And Not name_in_cc) Then
' start with each main mapi folder
Dim idx As Integer
For idx = 1 To Outlook.Session.Folders.Count - 1
' recurse into subfolders
Dim dest As Outlook.MAPIFolder
Set dest = GetFolder(Outlook.Session.Folders.Item(idx), DESTINATION_FOLDER)
' we found our destination!
If Not (dest Is Nothing) Then
mymail.Move dest
Exit For
End If
Next
End If
' house cleaning
Set mymail = Nothing
End If
End Sub
'// to iterate is human. to recurse, divine
Private Function GetFolder(parent As Folder, name As String) As Outlook.MAPIFolder
Dim idx As Integer
Dim res As Object
For idx = 1 To parent.Folders.Count
Set res = GetFolder(parent.Folders.Item(idx), name)
If Not res Is Nothing Then
Set GetFolder = res
Exit For
End If
Next
If (parent.name = name) Then
Set GetFolder = parent
End If
End Function