如何在 Outlook 中阻止向特定地址发送外部邮件?
一般情况下,Outlook 会将邮件发送至所有有效的邮箱地址,无法阻止向某个特定邮箱地址发送邮件。但有时,您可能希望在 Outlook 中防止向某一特定邮箱地址发送邮件。针对这种需求,本教程将为您介绍一段 VBA 代码,帮助您实现这一目标。
使用 VBA 代码阻止向特定地址发送外部邮件
下面的 VBA 代码可以帮您实现该功能,请按照以下步骤操作:
1. 启动 Outlook,按住 ALT + F11 键即可打开 Microsoft Visual Basic for Applications 窗口。
2. 在 Project-Project 1 窗格中,双击 ThisOutlookSession,然后将下方代码复制并粘贴到空白代码窗口中:
VBA 代码:阻止向特定地址发送外部邮件
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'Updatby ExtendOffice
Dim xMail As Outlook.MailItem
Dim xRecipients As Outlook.Recipients
Dim xContactGroupFound As Boolean
Dim i, n As Long
Dim xRecipient As Outlook.Recipient
Dim xAddress As String
Const PR_SMTP_ADDRESS As String = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
On Error Resume Next
If Item.Class <> olMail Then Exit Sub
Set xMail = Item
xContactGroupFound = True
Do While xContactGroupFound = True
Set xRecipients = xMail.Recipients
xContactGroupFound = False
For i = xRecipients.Count To 1 Step -1
If xRecipients(i).AddressEntry.DisplayType <> olUser Then
For n = 1 To xRecipients(i).AddressEntry.Members.Count
If xRecipients(i).AddressEntry.Members.Item(n).DisplayType = olUser Then
xMail.Recipients.Add (xRecipients(i).AddressEntry.Members.Item(n).Address)
Else
xMail.Recipients.Add (xRecipients(i).AddressEntry.Members.Item(n).Name)
xContactGroupFound = True
End If
Next
xRecipients(i).Delete
End If
Next i
xRecipients.ResolveAll
Loop
For Each xRecipient In xRecipients
xAddress = xRecipient.PropertyAccessor.GetProperty(PR_SMTP_ADDRESS)
If VBA.Trim(xAddress) = "" Then
xAddress = xRecipient.Address
End If
If xAddress = "yy@addin99.com" Then 'change this email address to your need
If MsgBox("Do you want to email to " & Chr(34) & xAddress & Chr(34) & "?", vbExclamation + vbYesNo, "Kutools for Outlook") = vbNo Then
xRecipient.Delete
End If
End If
Next
If xMail.Recipients.Count = 0 Then
Cancel = True
End If
End Sub

3. 然后,保存并关闭此代码窗口。此后,在发送邮件时,如果收件人列表中包含指定邮箱地址,将弹出如下图所示的提示信息。单击否,即可立即删除该特定邮箱地址。

4. 在发送邮件后,您可以在已发送邮件文件夹中查看收件人,确认邮箱地址已从收件人列表中移除,详见截图:

Outlook AI 邮件助手:智能回复,沟通更高效清晰(只需一键,轻松体验神奇效果!)
通过 Kutools for Outlook 的 AI 邮件助手,轻松提升您的日常 Outlook 工作效率。该强大工具能够智能学习您的邮件习惯,提供高效、精准的回复建议,优化邮件内容,助您轻松起草和润色邮件。

该功能支持:
- 智能回复:根据您的历史对话内容生成个性化且精准的回复,随时为您所用。
- 内容优化:自动完善您的邮件文本,让表达更加清晰且更具影响力。
- 轻松写作:您只需输入关键词,剩下的交给 AI,多种润色风格随心选择。
- 智能扩展:结合上下文,智能拓展您的想法,提供精准建议。
- 智能摘要:轻松为冗长邮件快速生成简明概览,让信息一目了然。
- 全球畅邮:轻松将邮件翻译为任意语言。
该功能支持:
- 智能邮件回复
- 内容优化
- 关键词草稿
- 智能内容扩展
- 邮件摘要
- 多语言翻译
最佳办公效率工具
体验全新 Kutools for Outlook,畅享 100+ 强大功能!立即点击下载,不容错过!
🤖KUTOOLS AI:采用先进 AI 技术,轻松处理邮件,涵盖回复、摘要、优化、扩展、翻译及撰写等功能。
📧 邮件自动化:自动答复(支持 POP 和 IMAP)/定时发送邮件/发送邮件时按规则自动抄送密送/自动转发(高级规则)/自动添加称呼/自动将多收件人邮件拆分为单独信息……
📨 邮件管理:撤回邮件/按主题等条件拦截诈骗邮件/删除重复邮件/高级搜索/整合文件夹……
📁 附件增强:批量保存/批量分离/批量压缩/自动保存/自动拆离/自动压缩……
🌟 界面魔法:😊更多美观时尚表情/重要邮件到达时提醒您/最小化 Outlook 而不是直接关闭……
👍 一键精彩功能:带附件全部答复/反钓鱼邮件/🕘显示发送者当前时间时区……
👩🏼🤝👩🏻 联系人与日历:批量从选定邮件中提取添加联系人/将联系人组拆分为个人组/移除生日提醒……
在您的首选语言中畅享 Kutools —— 支持英语、西班牙语、德语、法语、中文等 40 多种语言!
一键解锁 Kutools for Outlook,告别等待,立即下载,让效率倍增!


🚀 一键下载 — 即可获取全部 Office 加载项
强烈推荐:Kutools for Office(5 合 1)
一键下载五个安装包,即可同时获得 Kutools for Excel、Outlook、Word、PowerPoint 和 Office Tab Pro。立即点击下载!
- ✅ 一键便捷:只需一次操作,即可下载全部五个安装包。
- 🚀 轻松应对各类 Office 任务:随时按需安装所需插件,助您高效办公,不容错过!
- 🧰 包含:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint