2个outlook账号,邮件从A账号自动redirect到B账号,如何在回复所有人的时候 自动移除A账号 VBA
时间: 2024-09-12 18:16:14 浏览: 35
python-outlook自动发信-exchange-自动发邮件-outlook-办公自动化
在Outlook中,如果你想要设置自动转发邮件从一个账号(A账号)到另一个账号(B账号),并且在使用回复所有人功能时自动移除A账号的地址,你可能需要使用VBA(Visual Basic for Applications)脚本来实现这个需求。以下是一个简化的步骤说明和代码示例:
1. 打开Outlook,然后按下 `Alt + F11` 键打开VBA编辑器。
2. 在左侧的项目资源管理器中,找到“Microsoft Outlook 对象”下的`ThisOutlookSession`,这是编写代码的地方。
3. 在`ThisOutlookSession`中,编写一个事件处理程序,用于检测邮件转发事件,并且在转发邮件时移除A账号的邮箱地址。
以下是一个简单的VBA代码示例,用于在转发邮件时移除特定的发件人地址:
```vba
Private WithEvents myItems As Outlook.Items
Private Sub Application_Startup()
Dim olApp As Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Set olApp = Outlook.Application
Set myNameSpace = olApp.GetNamespace("MAPI")
' 请注意这里设置的是要监视转发的文件夹,通常是收件箱
Set myItems = myNameSpace.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub myItems_ItemAdd(ByVal Item As Object)
Dim newMail As Outlook.MailItem
If TypeName(Item) = "MailItem" Then
Set newMail = Item
If newMail.Subject Like "*转发*" Then ' 检查邮件是否包含“转发”
Dim recipients As Outlook.Recipients
Set recipients = newMail.Recipients
Dim recipient As Outlook.Recipient
For Each recipient In recipients
' 检查并移除特定的发件人地址(A账号)
If recipient.Address = "A账号的邮箱地址" Then
recipient.Resolve
If Not recipient.Resolved Then
recipient.Delete
End If
End If
Next recipient
End If
End If
End Sub
```
请注意,在实际使用中,你需要根据实际情况调整代码中的`olFolderInbox`(文件夹)和`"A账号的邮箱地址"`(要移除的邮箱地址)等参数。
阅读全文