跳至主要内容

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

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

Author Xiaoyang Last modified

在Outlook中,如果有多个邮件主题或任务主题需要替换为您指定的文本,当然可以逐个更改它们,但是,您是否有快速的方法可以在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”是您要替换的新文本。请根据您的需要进行更改。

doc replace subjects 1

3. 然后按“F5”键运行此代码,邮件主题中的特定文本已被替换为您需要的新文本,见截图:

doc replace subjects 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”键执行此代码,会弹出一个提示框,请输入您要从任务主题中查找的文本,见截图:

doc replace subjects 3

4. 点击“确定”,又会弹出一个提示框,请输入您要替换的新文本,见截图:

doc replace subjects 4

5. 然后点击“确定”,会显示一个对话框告诉您有多少个主题已更改,见截图:

doc replace subjects 5

6. 点击“确定”,任务主题中的旧文本已被替换为新文本,见截图:

doc replace subjects 6

最佳 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