gpt4 book ai didi

vba - 如何修改 sessionTopic 以便将不同主题的电子邮件放在同一线程中?

转载 作者:行者123 更新时间:2023-12-04 11:57:59 25 4
gpt4 key购买 nike

我想帮助 Outlook 2010 处理我的电子邮件。我的理解是,它基于 conversationTopic 的对话 View 。 MailItem 的属性(property).我编写了以下方法并创建了一个规则,以便它触发电子邮件主题,例如“订单# 345 - 来自供应商的回复”和“订单# 345 - 来自客户的回复”,并将它们放在同一线程中。不幸的是conversationTopic是只读属性。

有没有人知道解决这个问题的方法,或者可能是完成相同任务的更好方法?谢谢!

Sub ModifyConversationTopic(Item As Outlook.MailItem)
Dim regex As RegExp
Dim newMailItem As Outlook.MailItem
newMailItem = Item.Copy
Set regex = New RegExp
regex.IgnoreCase = False
regex.Global = True
regex.Pattern = "(Order# [0-9]+) .*"
If regex.Test(newMailItem.Subject) Then
Dim matches As MatchCollection
Set matches = regex.Execute(newMailItem.Subject)
Set topic = matches.Item(0)
MsgBox ("OH YEAH" + topic)
newMailItem.ConversationTopic = topic
newMailItem.Save
End If
End Sub

最佳答案

正在寻找几乎完全相同的东西,正如您指出的那样,这对于通常暴露的对象似乎是不可能的,但是 VBA 宏 + Outlook Redemption 允许轻松调整对话主题。奖励,原始消息主题不变,但消息仍然显示在一个漂亮整洁的对话组中。

像这样的东西,扔到 VBA 宏中,然后在接收到具有您确定的任何条件的消息时将此脚本作为规则操作运行:

Sub MsgProcess(msg As MailItem)
Dim oNS As Object
Dim oRDOSess As Object
Dim oRDOItem As Object
Dim sEntryID As String
Dim sStoreID As String

Dim NewConversationTopic As String


Set oRDOSess = CreateObject("Redemption.RDOSession")
Set oNS = Nothing
Set oNS = Outlook.GetNamespace("MAPI")
oNS.Logon
oRDOSess.MAPIOBJECT = oNS.MAPIOBJECT

sEntryID = msg.EntryID
sStoreID = msg.Parent.StoreID
Set oRDOItem = oRDOSess.GetMessageFromID(sEntryID, sStoreID)

'Apply what modifications to topic you want here - dumb example string manipulation shown
NewConversationTopic = Replace(oRDOItem.ConversationTopic, "BLACK", "WHITE")

oRDOItem.ConversationTopic = NewConversationTopic
oRDOItem.Save
End Sub

关于vba - 如何修改 sessionTopic 以便将不同主题的电子邮件放在同一线程中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8806882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com