Risoluzione del seguente problema:
Si desidera conservare in apposita cartella separata, tutte le ricevute di lettura / invio / inoltro di messaggi di posta elettronica, con Outlook 2010.
Si desidera spostare i messaggi più vecchi di un tot di giorni, allo scopo di conservare nella cartella principale le ricevute (report) più recenti, e quindi ancora "attuali" rispetto alle conversazioni mail.
Soluzione del problema: una macro VBA.
In outlook 2010 premere ALT + F11, per entrare in modalità Visual basic
selezionare sul panel di sinistra "thisOutlooksession"
Copiare il seguente codice:
Codice: Seleziona tutto
Sub SpostaRicevute()
Dim olns As Outlook.NameSpace
Dim oConItems As Outlook.Items
Dim iNumItems As Integer
Dim dDate As Date
Const Days = 7
Set objNS = Application.GetNamespace("MAPI")
Set oInboxItems = objNS.GetDefaultFolder(olFolderInbox).Items
Set objTargetFolder = Outlook.Session.PickFolder
iNumItems = oInboxItems.Count
For I = iNumItems To 1 Step -1
Set objcuritem = oInboxItems.Item(I)
If TypeName(objcuritem) = "ReportItem" Then
dDate = objcuritem.CreationTime
If DateDiff("d", dDate, Now) > Days Then
objcuritem.Move objTargetFolder
End If
End If
Next
MsgBox "Finished moving items."
Set objInboxItems = Nothing
Set objTargetFolder = Nothing
Set objNS = Nothing
End Sub
Azionando la macro, verrà richiesta la cartella ove salvare i rapporti vecchi. Un messaggio avvertirà che l'operazione è terminata.