【发布时间】:2015-10-22 04:34:49
【问题描述】:
我想做以下事情:
在收到新邮件时,应检查邮件的主题,如果同一主题已存在于任何子文件夹中,则邮件应移至同一子文件夹。如果找不到相同的邮件,它将保留在正常的收件箱文件夹中。 这样的目标文件夹与邮件没有逻辑连接,因此它不像邮件或邮件发件人或类似的东西那样被调用。它只是包含一封或相同主题的邮件的文件夹。
我通过浏览这个论坛来识别事件、邮件主题并执行实际操作。 我没有管理的是:
1.创建搜索逻辑以在任何文件夹中查找具有相同主题的现有邮件
2.返回找到的文件夹以将其用作目标目的地。
这是它到目前为止的样子,它设法显示一条消息......
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set Items = objNS.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub Items_ItemAdd(ByVal Item As Object)
On Error GoTo ErrorHandler
Dim Msg As Outlook.MailItem
Dim MoveToFolder As Outlook.MAPIFolder
If TypeName(Item) = "MailItem" Then
Set Msg = Item
MsgBox "Here the folder must be found for '" & Msg.Subject & "'."
'Msg.Move MoveToFolder
End If
ProgramExit:
Exit Sub
ErrorHandler:
MsgBox Err.Number & " - " & Err.Description
Resume ProgramExit
End Sub
最重要的是:是否有特定的智能方法可以对其他事件(例如“SentMails”)执行相同的操作?
非常感谢您的支持。
拉尔夫
【问题讨论】: