我使用下面的邮件移动到Outlook中的文件夹中。
Dim chemin() as String
chemin = Split(path, "/")
Set myNameSpace = Application.GetNamespace("MAPI")
Set myFolder = myNameSpace.Folders("LiveLink").Folders("Livelink HQE").Folders("Entreprise").Folders(chemin(1)).Folders(chemin(2)).Folders(chemin(3))
myEntryID = myFolder.EntryID
myEntryID = myFolder.StoreID
objMail.Move myNameSpace.GetFolderFromID(myEntryID, storeID)
一切实际工作。 正如你所看到的,该文件夹位于成Livelink的。 而Livelink的服务器实际上是响应很慢,我不能做任何事情。
我担心的是有关使用.Folders()那么多次,而这将是快了很多做这样的事情.Folders("Livelink/root/folder1/folder2/")
但是,这不是明显的工作,而且由于.Folders命令需要来ping服务器的Livelink每次,它实际上需要整整10秒只执行这行代码(以及更深层次的是文件夹,时间越长,更是达到它)。
是否有任何其他的方式来直接访问特定的文件夹在Outlook中移动邮件? 我知道有一些对每个文件夹的一种展望ID的(甚至是那些在Livelink的),但我看不出有任何的方式来使用它。 我试过以下,但它不工作尚未:
Dim folder As MAPIFolder
Dim myNameSpace As Outlook.NameSpace
Set myNameSpace = Application.GetNamespace("MAPI")
Set folder = myNameSpace.GetFolderFromID(target, Application.GetNamespace("MAPI").Folders("LiveLink").storeID)
做GetFolderfromID时,这给了我一个错误()。 var这个target
实际上是我想要的邮件复制到该文件夹的EntryID。