发送电子邮件时如何自动从主题行中删除某些特殊字符?
在Outlook中发送电子邮件时在主题行中键入主题时,您可能会意外插入一些特殊字符,因此您需要一个一个地删除这些特殊字符。 在本文中,我将讨论在发送电子邮件时如何自动从主题中删除所有这些特殊字符。
使用VBA代码发送电子邮件时,会自动删除主题行中的所有特殊字符
使用VBA代码发送电子邮件时,会自动删除主题行中的所有特殊字符
发送电子邮件时,自动从主题行中删除特殊字符,以下VBA代码可以帮您一个忙。 请这样做:
1。 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2。 在 Microsoft Visual Basic应用程序 窗口,双击 本次展望会议 来自 Project1(VbaProject.OTM) 窗格以打开模式,然后将以下代码复制并粘贴到空白模块中。
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
3。 然后,仍然在 Microsoft Visual Basic应用程序 窗口中,单击 工具 > 参考资料 去 参考-Project1 对话框,然后检查 Microsoft VBAScript正则表达式1.0 选项从 可用参考 列表框,请参见屏幕截图:
4。 然后点击 OK 要关闭对话框,现在,当您在主题行中发送带有某些特殊字符的消息时,将在发送后自动将其删除。 看截图:
最佳办公生产力工具
Kutools for Outlook - 超过 100 种强大功能可增强您的 Outlook
🤖 人工智能邮件助手: 具有人工智能魔力的即时专业电子邮件——一键天才回复、完美语气、多语言掌握。轻松改变电子邮件! ...
📧 电子邮件自动化: 外出(适用于 POP 和 IMAP) / 安排发送电子邮件 / 发送电子邮件时按规则自动抄送/密件抄送 / 自动转发(高级规则) / 自动添加问候语 / 自动将多收件人电子邮件拆分为单独的消息 ...
📨 电子邮件管理: 轻松回忆电子邮件 / 按主题和其他人阻止诈骗电子邮件 / 删除重复的电子邮件 / 高级搜索 / 合并文件夹 ...
📁 附件专业版: 批量保存 / 批量分离 / 批量压缩 / 自动保存 / 自动分离 / 自动压缩 ...
🌟 界面魔法: 😊更多又漂亮又酷的表情符号 / 使用选项卡式视图提高 Outlook 工作效率 / 最小化 Outlook 而不是关闭 ...
👍 一键奇迹: 使用传入附件回复全部 / 反网络钓鱼电子邮件 / 🕘显示发件人的时区 ...
👩🏼🤝👩🏻 通讯录和日历: 从选定的电子邮件中批量添加联系人 / 将联系人组拆分为各个组 / 删除生日提醒 ...
超过 100特点 等待您的探索! 单击此处了解更多。