是否可以从电子邮件中更改旗标状态,而我已将其移至共享邮箱中的文件夹?
示例:我收到一封新邮件,并用红色标记标记它。然后,当作业完成时,我将邮件移至“已完成”文件夹。将邮件移动到此文件夹后,我希望Flagstatus为“ olFlagComplete”(绿色标记),并且每次打开Outlook时,代码应检查带有红色标记的邮件文件夹(例如,从手机中移动的邮件)并进行设置到绿色标志。
我尝试了以下操作,但是在打开的Outlook上没有任何反应。
希望有人可以帮助我。
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim olNameSpace As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Set olNameSpace = Application.GetNamespace("MAPI")
Set olFolder = olNameSpace.Folders("[email protected]")
Set olFolder = olFolder.Folders("Completed")
Set Items = olFolder.Items
End Sub
Private Sub Items_ItemChange(ByVal Item As Object)
Dim olNameSpace As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Dim Mail As MailItem
Set olNameSpace = Application.GetNamespace("MAPI")
Set olFolder = olNameSpace.Folders("[email protected]")
Set olFolder = olFolder.Folders("Completed")
If TypeOf Item Is Outlook.MailItem Then
Set Mail = Item
If Mail.FlagStatus = olFlagMarked Then
'Set ItemCopy = Item.Copy ' Copy Flagged item
'ItemCopy.Move olFolder ' Move Copied item
Set Mail.FlagStatus = olFlagComplete
End If
Set Item = Nothing
'Set ItemCopy = Nothing
End If
End Sub
Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
Dim olNameSpace As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Set olNameSpace = Application.GetNamespace("MAPI")
Set olFolder = olNameSpace.Folders("[email protected]")
Set olFolder = olFolder.Folders("Completed")
Set Items = olFolder.Items
For Each Item In Items
If TypeOf Item Is Outlook.MailItem Then
Set Mail = Item
If Mail.FlagStatus = olFlagMarked Then
Set Mail.FlagStatus = olFlagComplete
End If
End If
Next
End Sub
Completed
文件夹的项目:Private Sub Items_ItemAdd(ByVal Item As Object)
If TypeOf Item Is Outlook.MailItem Then
Set Mail = Item
If Mail.FlagStatus = olFlagMarked Then
Set Mail.FlagStatus = olFlagComplete
End If
End If
End Sub