【发布时间】:2016-03-15 21:32:28
【问题描述】:
如何移动我标记的电子邮件副本并将它们放入文件夹中?
例如,John Doe 给我发了一封电子邮件,我标记它,原始电子邮件保留在我的收件箱中,但电子邮件的副本进入名为 "Follow Up" 的文件夹。有人能帮我吗?
编辑:
下面的代码与我想要的非常接近,但它将原始电子邮件移动到文件夹而不是副本。它也不针对标记的电子邮件。
Sub FollowUp()
On Error Resume Next
Dim ns As Outlook.NameSpace
Dim moveToFolder As Outlook.MAPIFolder
Dim objItem As Outlook.MailItem
Set ns = Application.GetNamespace("MAPI")
'Define path to the target folder
Set moveToFolder = ns.Folders("MainFolder").Folders("Inbox").Folders("Follow Up")
If Application.ActiveExplorer.Selection.Count = 0 Then
MsgBox ("No item selected")
Exit Sub
End If
If moveToFolder Is Nothing Then
MsgBox "Target folder not found!", vbOKOnly + vbExclamation, "Move Macro Error"
End If
For Each objItem In Application.ActiveExplorer.Selection
If moveToFolder.DefaultItemType = olMailItem Then
If objItem.Class = olMail Then
objItem.Move moveToFolder
End If
End If
Next
Set objItem = Nothing
Set moveToFolder = Nothing
Set ns = Nothing
End Sub
【问题讨论】:
-
您要求仅在邮件被标记时才移动副本?自动还是通过选择?
-
通过选择。如果我的收件箱中有一封电子邮件,我单击右侧的标志,我希望它复制已标记的电子邮件并将其放入文件夹中。我希望每次标记电子邮件时它都是自动的。
标签: vba outlook outlook-2010