【发布时间】:2022-08-17 22:55:11
【问题描述】:
我有一个老板,他收到大量电子邮件并为它们分配类别。在为它们分配类别后,我需要将这些电子邮件移至名为该类别的不同 pst 文件收件箱。我不需要自动创建收件箱。
我的代码将电子邮件移动到分配类别的默认收件箱文件夹中的文件夹。我需要它移动到另一个 pst 文件收件箱。
此人正在使用 POP3。我知道 IMAP 会更好,但由于老员工“意外”删除了电子邮件,它们以自己的方式设置。
Private WithEvents objInboxFolder As Outlook.Folder
Private WithEvents objInboxItems As Outlook.Items
\'Process inbox mails
Private Sub Application_Startup()
Set objInboxFolder = Outlook.Application.Session.GetDefaultFolder(olFolderInbox)
Set objInboxItems = objInboxFolder.Items
End Sub
\'Occurs when changing item
Private Sub objInboxItems_ItemChange(ByVal Item As Object)
Dim objMail As Outlook.MailItem
Dim objTargetFolder As Outlook.Folder
If TypeOf Item Is MailItem Then
Set objMail = Item
\'Move mails based on color category
If InStr(objMail.Categories, \"Followup\") > 0 Then
Set objTargetFolder = Application.Session.GetDefaultFolder(olFolderInbox).Folders(\"Followup\")
objMail.Move objTargetFolder
ElseIf InStr(objMail.Categories, \"Business\") > 0 Then
Set objTargetFolder = Application.Session.GetDefaultFolder(olFolderInbox).Folders(\"Business\")
objMail.Move objTargetFolder
End If
End If
End Sub
-
这回答了你的问题了吗? Reference a folder not under the default inbox
-
Set objTargetFolder = Session.Folders(\"nameofpst\").Folders(\"Inbox).Folders(\"跟进\")`