Автоматично преместване на имейл от папка "Изтрити" в друга папка

Моята компания използва облачна система за обмен, която изтрива имейли, когато са били в папката „Изтрити елементи“ в продължение на 30 дни (ние използваме клиенти на Outlook 2010). Искам скрипт, който да премества всички имейли от папката "Изтрити" във втора папка, наречена "Кошче". Успях да намеря повечето от следния скрипт онлайн, но той не работи за мен и не съм сигурен какво липсва/неправилно. Всяка помощ се оценява...

Sub MoveDeletedItems()
Dim oSource As Outlook.MAPIFolder
Dim oTarget As OutlookMAPIFolder
Dim oDummy As Object
Dim oToMove As Object
Dim colItems As Outlook.Items
Dim i As Long

Set oSource = Application.Session.GetDefaultFolder(olFolderDeletedItems)
Set oTarget = oSource.Folders.Folder("Trash")

Set colItems = oSource.Items

For i = colItems.Count To 1 Step -1
Set oToMove = colItems(i)
Set oDummy = oToMove.Move(oTarget)
Next
End Sub

person T. Jones    schedule 23.10.2013    source източник
comment
Нямаме представа как не работи за вас, опитайте се да добавите малко подходяща информация за това, което не работи   -  person Sorceri    schedule 24.10.2013
comment
Ще се радвам да добавите повече информация. Какво търсите? Опитвам се да стартирам скрипта по-горе и, доколкото виждам, нищо не се случва.   -  person T. Jones    schedule 24.10.2013
comment
stackoverflow.com/questions/how-to-ask   -  person Sorceri    schedule 24.10.2013
comment
Може би не формулирам ясно въпроса си. пак ще опитам Опитвам се да използвам VB скрипт, който при стартиране премества (не копира) имейли от папката „Изтрити елементи“ в Outlook 2010 с помощта на акаунт в Exchange в друга папка. Досега имам скрипта, който виждате по-горе. Когато стартирам VB скрипта, доколкото мога да кажа, нищо не се случва. Никой имейл не се премества от папката "Изтрити елементи". Надявам се на помощ във формата, че някой, който познава VB Scripting, може да посочи грешката в кода по-горе.   -  person T. Jones    schedule 24.10.2013


Отговори (1)


Първо имате много неща, които не ви трябват

Ето пример с коментари, които могат да се изпълняват като макрос в Outlook.

Sub MoveDeletedItems()
'setup some error checking
On Error GoTo err_rpt
Dim oSource As Outlook.MAPIFolder
Dim oTarget As Outlook.MAPIFolder
Dim oItem

'get the deleted Items folder
Set oSource = Application.Session.GetDefaultFolder(olFolderDeletedItems)
'get the folder under the Deleted Items folder called Trash
Set oTarget = oSource.Folders("Trash")
'loop through all the items in the source folder
For Each oMailItem In oSource.Items 
    'move the item to the target folder
    oItem.Move oTarget
Next

err_rpt:
If Err.Number > 0 Then
    MsgBox Err.Description
End If
'release the folders
Set oTarget = Nothing
Set oSource = Nothing
End Sub
person Sorceri    schedule 24.10.2013
comment
Sorceri, благодаря за отделеното време и отговора. Много се оценява! - person T. Jones; 28.10.2013