Vba 将特定电子邮件从一个子文件夹移动到另一个子文件夹

Vba 将特定电子邮件从一个子文件夹移动到另一个子文件夹,vba,email,outlook,Vba,Email,Outlook,我想使用与中不同的代码 我使用的代码来自 我想从子文件夹而不是收件箱中移动电子邮件。假设我要搜索邮件的子文件夹名为“Marketing” 我要修改的代码 Sub-CreateRule() 将规则设置为Outlook.Rules 模糊规则作为Outlook.Rule 将colRuleActions设置为Outlook.RuleActions 将oMoveRuleAction设置为Outlook.MoveOrCopyRuleAction RomCondition的Dim为Outlook.ToOrFr

我想使用与中不同的代码

我使用的代码来自

我想从子文件夹而不是收件箱中移动电子邮件。假设我要搜索邮件的子文件夹名为“Marketing”

我要修改的代码

Sub-CreateRule()
将规则设置为Outlook.Rules
模糊规则作为Outlook.Rule
将colRuleActions设置为Outlook.RuleActions
将oMoveRuleAction设置为Outlook.MoveOrCopyRuleAction
RomCondition的Dim为Outlook.ToOrFromRuleCondition
将oExceptSubject设置为Outlook.TextRuleCondition
将对话框设置为Outlook.Folder
将oMoveTarget设置为Outlook.Folder
'指定规则移动操作的目标文件夹
Set oInbox=Application.Session.GetDefaultFolder(olFolderInbox)
'假定目标文件夹已存在
设置oMoveTarget=oInbox.Folders(“广告”)
'从Session.DefaultStore对象获取规则
Set colRules=Application.Session.DefaultStore.GetRules()
'通过向规则集合添加接收规则来创建规则
Set oRule=colRules.Create(“广告规则”,olRuleReceive)
'在ToOrFromRuleCondition对象中指定条件
'条件是消息是否来自'xyz@abc.com" 
RomCondition集合=oRule.Conditions.From
不稳定的
.Enabled=True
.Recipients.Add(“xyz@abc.com") 
.Recipients.ResolveAll
以
'在MoveOrCopyRuleAction对象中指定操作
'操作是将邮件移动到目标文件夹
设置oMoveRuleAction=oRule.Actions.MOVETOFOLD
以惊人的行动
.Enabled=True
.Folder=oMoveTarget
以
'为TextRuleCondition对象中的主题指定异常条件
'例外条件是主题包含“新”或“兴趣”
设置oExceptSubject=\u
主题
有一个例外的主题
.Enabled=True
.Text=数组(“新”、“兴趣”)
以
'更新服务器并显示进度对话框
colRules,保存
端接头
我想我需要修改这些行

“为规则移动操作指定目标文件夹
Set oInbox=Application.Session.GetDefaultFolder(olFolderInbox)
设置您的子文件夹

'Specify target folder for rule move action
Set oInbox = Application.Session.GetDefaultFolder(olFolderInbox).Folders("Marketing")

Folder类提供返回Folders集合的属性,该集合表示指定文件夹中包含的所有文件夹

如果需要获取名为“Marketing”的文件夹,可以使用以下代码:

 Set oMoveTarget = oInbox.Folders("Marketing") 
如果文件夹位于树下,则必须递归调用Folders属性,例如,请参阅


最后,您可能会发现这篇文章很有帮助

营销
何处
?所有电子邮件或特定电子邮件?从市场营销到广告(设置oMoveTarget=oInbox.Folders(“广告”)。并移动除主题为“新”或“感兴趣”的电子邮件以外的所有电子邮件。此条件目前已包含在例外代码中。目前,该代码通过将邮件从“收件箱”移动到“广告”来工作哦,哇…这就像一个符咒…这正是我想要的!再次感谢!感谢您提供的信息。我会查看链接,但我想要的答案是添加以下内容,以便我可以从该子文件夹中移动内容。无论如何,谢谢!设置oInbox=Application.Session.GetDefaultFolder(olFolderInbox).Folders(“营销”)