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

如何在 Outlook 中按类别打印任务?

作者晓阳修改日期

假如您的 Outlook 任务中包含多种颜色类别,您希望将任务列表按类别分别打印在不同页面,该如何在 Outlook 中实现这一需求?

手动逐个在不同页面上按类别打印任务

使用 VBA 代码将任务按类别分页面打印


手动逐个在不同页面上按类别打印任务

在 Outlook 中,您可以按照不同类别,手动逐一在不同页面打印任务列表,请按以下方法操作:

11. 启动 Outlook,进入任务窗格,选择您要打印的任务文件夹,然后按下 Ctrl + E 激活搜索框,接着在搜索选项卡上,点击“已分类”图标,并选择您需要打印的颜色类别,如图所示:

按类别打印任务 1

22. 此时,所有带有该特定颜色类别的任务将会全部列出,如下截图所示:

按类别打印任务 2

33. 然后,继续点击文件> 打印,即可按照如下截图所示打印出该任务列表:

按类别打印任务 3

4. 请按照上述步骤,依次手动打印出其他颜色类别的任务列表。


使用 VBA 代码将任务按类别分页面打印

这里提供一个 VBA 代码,可以帮助您一次性根据类别,将任务打印在不同页面,请按照以下步骤操作:

11. 进入任务窗格,选择需要打印的任务文件夹。

22. 按下 ALT + F11 组合键,即可打开 Microsoft Visual Basic for Applications 窗口。

33. 接着,点击插入> 模块,将以下代码复制粘贴到打开的空白模块中:

VBA 代码:按类别分页面打印任务:

Sub PrintTaskList_SpecificColorCategory()
    Dim xTaskItems As Outlook.Items
    Dim xTask As Outlook.TaskItem
    Dim xDictionary As Scripting.Dictionary
    Dim xCategoryArr As Variant, xCategory As Variant
    Dim xExcelApp As Excel.Application
    Dim xExcelWorkbook As Excel.Workbook
    Dim xExcelWorksheet As Excel.Worksheet
    Dim xSheet As Excel.Worksheet
    Dim xKey As Variant
    Dim xKeyStr As String
    Dim i As Long, xLastRow As Integer
    On Error Resume Next
    If Application.ActiveExplorer.CurrentFolder.DefaultItemType <> olTaskItem Then Exit Sub
    Set xTaskItems = Application.ActiveExplorer.CurrentFolder.Items
    Set xDictionary = New Scripting.Dictionary
    For Each xTask In xTaskItems
        xCategoryArr = Split(xTask.Categories, ",")
        For Each xCategory In xCategoryArr
            If xDictionary.Exists(Trim(xCategory)) = False Then
               xDictionary.Add Trim(xCategory), 0
            End If
        Next
    Next
    If xDictionary.Count = 0 Then
        MsgBox "The current Task doesn’t have any category", vbOKOnly + vbInformation, "Kutools for Outlook"
        Exit Sub
    End If
    Set xExcelApp = New Excel.Application
    Set xExcelWorkbook = xExcelApp.Workbooks.Add
    xExcelApp.Visible = True
    i = 0
    If xDictionary.Count > xExcelWorkbook.Sheets.Count Then
        xExcelWorkbook.Sheets.Add Count:=xDictionary.Count - xExcelWorkbook.Sheets.Count
    End If
    For Each xKey In xDictionary.Keys
        xKeyStr = CStr(xKey)
        i = i + 1
        Set xExcelWorksheet = xExcelWorkbook.Sheets(i)
        xExcelWorksheet.Name = xKeyStr
        With xExcelWorksheet
             .Range("A1") = xKeyStr
             .Range("A1").Font.Bold = True
             .Range("A1").Font.Size = 18
             .Range("A1", "C1").HorizontalAlignment = xlCenter
             .Range("A1", "C1").VerticalAlignment = xlCenter
             .Range("A1", "C1").Merge
             .Range("A2") = "Subject"
             .Range("A2").Font.Bold = True
             .Range("B2") = "Start Date"
             .Range("B2").Font.Bold = True
             .Range("C2") = "Due Date"
             .Range("C2").Font.Bold = True
        End With
        For Each xTask In xTaskItems
            If InStr(xTask.Categories, xKeyStr) > 0 Then
               xLastRow = xExcelWorksheet.UsedRange.Rows.Count + 1
               With xExcelWorksheet
                    .Range("A" & xLastRow) = xTask.Subject
                    .Range("B" & xLastRow) = xTask.StartDate
                    .Range("C" & xLastRow) = xTask.DueDate
               End With
            End If
        Next
        xExcelWorksheet.Columns("A:C").AutoFit
    Next
    For Each xSheet In xExcelWorkbook.Sheets
        xSheet.PrintOut
    Next
    xExcelWorkbook.Close False
    xExcelApp.Quit
End Sub

44. 然后点击工具> 引用,在 Microsoft Visual Basic for Applications 窗口中,在弹出的 “引用-Project 1” 对话框,勾选 Microsoft Excel 对象库Microsoft Scripting Runtime 选项,并在“可用引用”列表框中找到,如下图所示:

按类别打印任务 4

55. 最后,点击确定按钮。现在,请按下 F5 键运行代码,执行完毕后,不同类别的任务列表将分别打印在各自页面。不容错过,立即体验高效分类!

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