Buongiorno a tutti. Ho trovato in qualche forum questo esempio per spostare email da una cartella di posta a un file con estensione ".Pst".
Sub Archive_Outlook_eMails_To_Backup_PST_Folder()
' Declare Objects
Dim SourceFolder As Outlook.MAPIFolder, DestFolder As Outlook.MAPIFolder
Dim MailItem As Outlook.MailItem
Dim SourceMailBoxName As String, DestMailBoxName As String
Dim Source_Pst_Folder_Name As String, Dest_Pst_Folder_Name As String
Dim MailsCount As Double, NumberOfDays As Double
'Set Number of days for aging check
NumberOfDays = 10
'Source Mailbox or PST name
SourceMailBoxName = "******@libero.it"
Source_Pst_Folder_Name = "Posta eliminata"
Set SourceFolder = Outlook.Session.Folders(SourceMailBoxName).Folders(Source_Pst_Folder_Name)
'Backup to this Mailbox or PST name
DestMailBoxName = "D:\Profili\u086520\Desktop\PRogrammi\Outlook\Salvataggio\ProvaMove.pst"
Dest_Pst_Folder_Name = "Posta"
Set DestFolder = Outlook.Session.Folders(DestMailBoxName).Folders(Dest_Pst_Folder_Name) 'Errore 91
'Set DestFolder = Outlook.Session.PickFolder 'Funziona
MailsCount = SourceFolder.Items.Count - 1
While MailsCount > 0
'Backup Mails Older than "Number of Days"
Set MailItem = SourceFolder.Items.Item(MailsCount)
If VBA.DateValue(VBA.Now) - VBA.DateValue(MailItem.ReceivedTime) >= NumberOfDays Then
SourceFolder.Items.Item(MailsCount).Move DestFolder
End If
MailsCount = MailsCount - 1
Wend
MsgBox "Mailes in " & Source_Pst_Folder_Name & " are Processed"
End Sub
Funziona tutto se commento la riga con "Errore 91" e utilizzo quella che segue con la dicitura "Funziona" dove scelgo manualmente il Folder di destinazione, ma non mi spiego perché funziona se la il "SET DestFolder" contiene, non tutto il percorso del file
Pst ma solo il nome edl Folder.
E comunque non capisco l'errore 91, che oggetto non trova?
Grazie