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

如何在 Outlook 的邮件或任务中查找并替换主题文本?

作者Xiaoyang修改日期

在 Outlook 中,如果需要将多封邮件或多个任务的主题批量替换为您指定的文本,除了逐一手动修改外,您是否在寻找一种更高效的方法,一次性完成这一操作呢?

通过 VBA 代码在多封邮件中查找和替换主题文本

通过 VBA 代码在多个任务中查找和替换主题文本


通过 VBA 代码在多封邮件中查找和替换主题文本

如果需要在多封邮件主题中查找特定文本并替换为其他内容,可以使用以下 VBA 代码帮您实现,请按以下步骤操作:

1. 选中需要查找并替换主题文本的邮件后,按下“ALT + F11”键,打开“Microsoft Visual Basic for Applications”窗口。

2. 然后,点击“插入”>“模块”,将下方代码复制并粘贴到新打开的空白模块中,如下图所示:

VBA 代码:查找和替换多封邮件的主题文本:

Option Explicit
Sub FindAndReplaceInSubject()
Dim xItem As Object
Dim xNewSubject As String
Dim xMailItem As MailItem
Dim xExplorer As Explorer
Dim i As Integer
On Error Resume Next
Set xExplorer = Outlook.Application.ActiveExplorer
For i = xExplorer.Selection.Count To 1 Step -1
    Set xItem = xExplorer.Selection.Item(i)
    If xItem.Class = olMail Then
        Set xMailItem = xItem
        With xMailItem
            xNewSubject = Replace(.Subject, "kte", "Kutools for Excel")
            .Subject = xNewSubject
            .Save
        End With
    End If
Next
End Sub

备注:在上述代码中:xNewSubject = Replace(。Subject, “kte”, “Kutools for Excel”),其中“kte”为您需要查找的旧文本,“Kutools for Excel”为您希望替换的新文本。请根据实际需求进行修改。

文档替换主题 1

3. 接着按下“F5”键运行代码,邮件主题中的指定文本即可被所需的新文本替换,如下图所示:

文档替换主题 2

通过 VBA 代码在多个任务中查找和替换主题文本

如果您需要在任务中查找并替换主题文本,以下 VBA 代码同样能够为您提供帮助。

1. 按下“ALT + F11”键,即可打开“Microsoft Visual Basic for Applications”窗口。

2. 然后,点击“插入”>“模块”,将以下代码复制并粘贴到打开的空白模块中,如下图所示:

VBA 代码:查找和替换所有任务的主题文本:

Option Explicit
Sub FindReplaceTextsInAllTaskSubjects()
Dim xPane As NavigationPane
Dim xModule As TasksModule
Dim xGroup As NavigationGroup
Dim xNavFolder As NavigationFolder
Dim xTaskItem As Outlook.TaskItem
Dim i, k As Integer
Dim xFindStr, xReplaceStr As String
Dim xTotalCount As Long
On Error Resume Next
xFindStr = InputBox("Type the words to find:", "Kutools for Outlook", xFindStr)
If Len(Trim(xFindStr)) = 0 Then Exit Sub
xReplaceStr = InputBox("Type the words to replace:", "Kutools for Outlook", xReplaceStr)
If Len(Trim(xReplaceStr)) = 0 Then Exit Sub
xTotalCount = 0
Set xPane = Outlook.Application.ActiveExplorer.NavigationPane
Set xModule = xPane.Modules.GetNavigationModule(olModuleTasks)
Set xGroup = xModule.NavigationGroups.Item(1)
For i = xGroup.NavigationFolders.Count To 1 Step -1
    Set xNavFolder = xGroup.NavigationFolders.Item(i)
    For k = xNavFolder.Folder.Items.Count To 1 Step -1
        Set xTaskItem = xNavFolder.Folder.Items(k)
        If InStr(xTaskItem.Subject, xFindStr) > 0 Then
            xTaskItem.Subject = Replace(xTaskItem.Subject, xFindStr, xReplaceStr)
            xTaskItem.Save
            xTotalCount = xTotalCount + 1
        End If
    Next
Next
MsgBox xTotalCount & " task subjects have been changed!", vbInformation + vbOKOnly, "Kutools for Outlook"
End Sub

3. 接着按下“F5”键运行代码,此时会弹出一个提示框,请输入您希望在任务主题中查找的文本,如下图所示:

文档替换主题 3

4. 点击“确定”后,将再次弹出提示框,请输入您要替换的新文本,如下图所示:

文档替换主题 4

5. 接着点击“确定”,系统将弹出对话框,告知您已更改的主题数量,如下图所示:

文档替换主题 5

6. 点击“确定”后,任务主题中的原有文本将被新内容替换,效果如下图所示:

文档替换主题 6

最佳办公效率工具

体验全新 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