Попробуйте сначала переместить его, а затем удалить (работает с некоторыми патчами в 2000 году) или используйте RDO или CDO, чтобы сделать эту работу за вас (вам придется их установить).
Set objDeletedItem = objDeletedItem.Move(DeletedFolder)
objDeletedItem.Delete
способ CDO
Set objCDOSession = CreateObject("MAPI.Session")
objCDOSession.Logon "", "", False, False
Set objMail = objCDOSession.GetMessage(objItem.EntryID, objItem.Parent.StoreID)
objMail.Delete
RDO
set objRDOSession = CreateObject("Redemption.RDOSession")
objRDOSession.MAPIOBJECT = objItem.Session.MAPIOBJECT
set objMail = objRDOSession.GetMessageFromID(objItem.EntryID>)
objMail.Delete
Вы также можете сначала пометить сообщение, прежде чем удалить его, а затем просмотреть папку удаленных элементов и найти его и вызвать удаление во второй раз. Отметьте его с помощью пользовательского свойства.
objMail.UserProperties.Add "Deleted", olText
objMail.Save
objMail.Delete
прокручивайте удаленные элементы, ищите этот userprop
Set objDeletedFolder = myNameSpace.GetDefaultFolder(olFolderDeletedItems)
For Each objItem In objDeletedFolder.Items
Set objProperty = objItem.UserProperties.Find("Deleted")
If TypeName(objProperty) <> "Nothing" Then
objItem.Delete
End If
Next
person
76mel
schedule
10.07.2009