KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何在 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
注意:在上述代码中,您需将邮箱地址替换为您自己的信息。

doc-阻止发送邮件到某个地址-1

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

doc-阻止发送邮件到某个地址-2

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

doc-阻止发送邮件到某个地址-3

Outlook AI 邮件助手:智能回复,沟通更高效清晰(只需一键,轻松体验神奇效果!)

通过 Kutools for Outlook 的 AI 邮件助手,轻松提升您的日常 Outlook 工作效率。该强大工具能够智能学习您的邮件习惯,提供高效、精准的回复建议,优化邮件内容,助您轻松起草和润色邮件。
doc ai 邮件处理

该功能支持:

  • 智能回复:根据您的历史对话内容生成个性化且精准的回复,随时为您所用。
  • 内容优化:自动完善您的邮件文本,让表达更加清晰且更具影响力。
  • 轻松写作:您只需输入关键词,剩下的交给 AI,多种润色风格随心选择。
  • 智能扩展:结合上下文,智能拓展您的想法,提供精准建议。
  • 智能摘要:轻松为冗长邮件快速生成简明概览,让信息一目了然。
  • 全球畅邮:轻松将邮件翻译为任意语言。

该功能支持:

  • 智能邮件回复
  • 内容优化
  • 关键词草稿
  • 智能内容扩展
  • 邮件摘要
  • 多语言翻译

立即行动——现在就下载 AI 邮件助手,畅享高效体验,不容错过!


最佳办公效率工具

体验全新 Kutools for Outlook,畅享 100+ 强大功能!立即点击下载,不容错过!

🤖KUTOOLS AI采用先进 AI 技术,轻松处理邮件,涵盖回复、摘要、优化、扩展、翻译及撰写等功能。

📧 邮件自动化自动答复(支持 POP 和 IMAP)/定时发送邮件/发送邮件时按规则自动抄送密送/自动转发(高级规则)/自动添加称呼/自动将多收件人邮件拆分为单独信息……

📨 邮件管理撤回邮件/按主题等条件拦截诈骗邮件/删除重复邮件/高级搜索/整合文件夹……

📁 附件增强批量保存/批量分离/批量压缩/自动保存/自动拆离/自动压缩……

🌟 界面魔法😊更多美观时尚表情/重要邮件到达时提醒您/最小化 Outlook 而不是直接关闭……

👍 一键精彩功能带附件全部答复/反钓鱼邮件/🕘显示发送者当前时间时区……

👩🏼‍🤝‍👩🏻 联系人与日历批量从选定邮件中提取添加联系人/将联系人组拆分为个人组/移除生日提醒……

在您的首选语言中畅享 Kutools —— 支持英语、西班牙语、德语、法语、中文等 40 多种语言!

一键解锁 Kutools for Outlook,告别等待,立即下载,让效率倍增!

kutools for outlook 功能1kutools for outlook 功能2

🚀 一键下载 — 即可获取全部 Office 加载项

强烈推荐:Kutools for Office(5 合 1)

一键下载五个安装包,即可同时获得 Kutools for Excel、Outlook、Word、PowerPointOffice Tab Pro立即点击下载!

  • 一键便捷:只需一次操作,即可下载全部五个安装包。
  • 🚀 轻松应对各类 Office 任务:随时按需安装所需插件,助您高效办公,不容错过!
  • 🧰 包含:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint