跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在发送邮件时自动删除主题行中的某些特殊字符?

Author Xiaoyang Last modified

在Outlook中发送邮件时,您可能在主题行输入主题时不小心插入了一些特殊字符,因此需要逐个删除这些特殊字符。在本文中,我将讨论如何在发送邮件时自动删除主题中的所有这些特殊字符。

使用VBA代码在发送邮件时自动删除主题行中的所有特殊字符


使用VBA代码在发送邮件时自动删除主题行中的所有特殊字符

在发送邮件时自动删除主题行中的特殊字符,以下VBA代码可以帮到您。请按照以下步骤操作:

1. 按住ALT + F11键打开Microsoft Visual Basic for Applications窗口。

2. 在Microsoft Visual Basic for Applications窗口中,双击 Project1(VbaProject.OTM)窗格中的ThisOutlookSession以打开模块,然后将以下代码复制并粘贴到空白模块中。

VBA代码:自动删除主题行中的特殊字符

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim xMailItem As Outlook.MailItem
    Dim xRegExp As RegExp
    Dim xSubject As String
    On Error Resume Next
    If Item.Class <> olMail Then Exit Sub
    Set xMailItem = Item
    xSubject = xMailItem.Subject
    Set xRegExp = CreateObject("VBScript.RegExp")
    With xRegExp
        .Global = True
        .IgnoreCase = True
        .Pattern = "[^a-zA-Z0-9\u4e00-\u9fa5]"
    End With
    If xRegExp.test(xSubject) = False Then Exit Sub
    xSubject = xRegExp.Replace(xSubject, "-")
    xMailItem.Subject = GetTargetStr(xSubject)
    Set RegExp = Nothing
End Sub
Function GetTargetStr(Str As String)
    Dim xS, xStr As String
    Dim i As Integer
    Dim xIsFirst As Boolean
    xIsFirst = True
    xStr = ""
    For i = 1 To Len(Str)
        xS = Mid(Str, i, 1)
        If xS = "-" Then
            If xIsFirst Then
                xS = " "
                xIsFirst = False
            Else
                xS = ""
            End If
        Else
            xIsFirst = True
        End If
        xStr = xStr + xS
    Next i
    GetTargetStr = xStr
End Function
doc remove special char 1

3. 然后,仍然在 Microsoft Visual Basic for Applications窗口中,点击工具 > 引用以打开References-Project1对话框,并从可用引用列表框中勾选Microsoft VBAScript Regular Expressions 1.0选项,见截图:

doc remove special char 2

4. 然后点击 确定关闭对话框,现在,当您发送带有某些特殊字符的主题邮件时,它将在发送后自动删除。见截图:

doc remove special char 3

最佳 Office 办公效率工具

最新消息:Kutools for Outlook 推出免费版!

体验全新 Kutools for Outlook,超过100 种强大功能!立即点击下载!

🤖 Kutools AI 采用先进的 AI 技术,轻松处理邮件,包括答复、总结、优化、扩展、翻译和撰写邮件。

📧 邮箱自动化自动答复(支持 POP 和 IMAP) /计划发送邮件 /发送邮件时按规则自动抄送密送 / 自动转发(高级规则) / 自动添加问候语 / 自动将多收件人的邮件分割为单独邮件 ...

📨 邮件管理撤回邮件 / 按主题及其他条件阻止欺诈邮件 / 删除重复邮件 / 高级搜索 / 整合文件夹 ...

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

🌟 界面魔法😊更多美观酷炫的表情 /重要邮件到达时提醒 / 最小化 Outlook 而非关闭 ...

👍 一键高效操作带附件全部答复 / 防钓鱼邮件 / 🕘显示发件人时区 ...

👩🏼‍🤝‍👩🏻 联系人与日历批量添加选中邮件中的联系人 / 分割联系人组为单独的组 / 移除生日提醒 ...

可根据您偏好选择 Kutools 使用语言——支持英语、西班牙语、德语、法语、中文及40 多种其他语言!

只需点击一下即可立即激活 Kutools for Outlook。无需等待,立即下载,提升工作效率!

kutools for outlook features1 kutools for outlook features2

🚀 一键下载——获取所有 Office 插件

强烈推荐:Kutools for Office(五合一)

一键下载五个安装包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