Email 为什么在Outlook中复制邮件需要这么长时间?

Email 为什么在Outlook中复制邮件需要这么长时间?,email,outlook,copy,directory,Email,Outlook,Copy,Directory,我想将邮件从一个Outlook文件夹复制到另一个Outlook文件夹。 当我运行下面的代码时,它需要很长的时间,例如,每个邮件项目需要5秒,即使邮件项目只是几行小于5kB的邮件 我在IMAP电子邮件帐户的文件夹中执行此操作 有时我也会遇到一个错误,一个项目不能移动,只能复制 我做错了什么?这应该很简单 目前,代码首先在原始文件夹中创建邮件的副本,然后我移动此副本。我希望直接在目标文件夹中创建副本 如果我通过拖放邮件(按住Ctrl键复制)手动完成这项工作,那么它的工作速度可能很快,就像3封邮件的1

我想将邮件从一个Outlook文件夹复制到另一个Outlook文件夹。 当我运行下面的代码时,它需要很长的时间,例如,每个邮件项目需要5秒,即使邮件项目只是几行小于5kB的邮件

我在IMAP电子邮件帐户的文件夹中执行此操作

有时我也会遇到一个错误,一个项目不能移动,只能复制

我做错了什么?这应该很简单

目前,代码首先在原始文件夹中创建邮件的副本,然后我移动此副本。我希望直接在目标文件夹中创建副本

如果我通过拖放邮件(按住Ctrl键复制)手动完成这项工作,那么它的工作速度可能很快,就像3封邮件的1s

Sub CopyMailsToOtherFolder()
On Error GoTo CopyMailsToOtherFolder_Err
    Dim olApp As Outlook.Application
    Dim objNS As Outlook.NameSpace
    Set olApp = Outlook.Application
    Set objNS = olApp.GetNamespace("MAPI")

    Dim TestFolder As Outlook.Folder
    Dim OutFolder As Outlook.Folder

    Dim objItem As Object   'Note that myItem is declared as type Object so that it can represent all types of Outlook items including meeting request and task request items.

    Dim MsgOrg As Outlook.MailItem
    Dim MsgCopy As Outlook.MailItem

    Dim lngI As Long

    Set TestFolder = objNS.Folders("Edgar").Folders("Inbox")
    Set OutFolder = objNS.Folders("Edgar").Folders("Inbox").Folders("TestOut")

    Debug.Print "Start: " & Time()
    'For lngI = 1 To TestFolder.Items.Count
    For lngI = 1 To 3
        Set objItem = TestFolder.Items(lngI)
        If TypeName(objItem) = "MailItem" Then
            Set MsgOrg = objItem
            Debug.Print " Org: " & MsgOrg.Subject
            Set MsgCopy = MsgOrg.Copy      'Creates copy in original folder
            MsgCopy.Move OutFolder
        End If
    Next

    Debug.Print "Done"

CopyMailsToOtherFolder_Exit:
    Debug.Print "Exit: " & Time()
    Exit Sub

CopyMailsToOtherFolder_Err:
    Debug.Print "Error " & Err.Number & " - " & Err.Description
    Resume CopyMailsToOtherFolder_Exit

End Sub

IMAP4存储提供程序是出了名的糟糕-每次您触摸一个项目时,它都会尝试将其(及其父文件夹)与远程IMAP4服务器同步。你在PST商店里看到过同样的行为吗?我刚刚用MS Exchange帐户试用过,它立即就可以工作了。对我来说,好消息是我只是在发现问题的IMAP帐户上首先测试了它。但实际上我需要它来交换,所以对我来说,这个问题已经解决了。谢谢