Skip to main content

如何根據類別在 Outlook 中列印任務?

Author: Xiaoyang Last Modified: 2025-08-06

假設您的 Outlook 任務中有各種顏色類別,現在您希望根據類別在不同頁面上列印任務清單。您該如何在 Outlook 中解決這個問題呢?

逐一手動在不同頁面上列印基於類別的任務

使用 VBA 程式碼在不同頁面上列印基於類別的任務


逐一手動在不同頁面上列印基於類別的任務

在 Outlook 中,您可以手動逐個在不同頁面上列印基於不同類別的任務,請按照以下步驟操作:

1. 啟動 Outlook,然後轉到「任務」窗格並選擇要列印的任務文件夾,然後按 Ctrl + E 啟動 搜尋框,在搜尋標籤下,點擊新增類別圖示,然後選擇需要列印的顏色類別,參見截圖:

doc print tasks by category 1

2. 接著,所有具有特定顏色類別的任務會立即列出,參見截圖:

doc print tasks by category 2

3. 然後,繼續點擊「從文件導入」 > 「列印」以列印此任務清單,如下方截圖所示:

doc print tasks by category 3

4. 重複上述步驟,逐一列印其他顏色類別的任務清單。


使用 VBA 程式碼在不同頁面上列印基於類別的任務

這裡有一段 VBA 程式碼可以幫助您一次在不同頁面上列印基於類別的任務,請按照以下步驟操作:

1. 轉到「 任務」窗格並選擇要列印的任務文件夾。

2. 然後,按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

3. 接著,點擊「插入」>「模組」,將以下程式碼複製並粘貼到打開的空白模組中:

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

4. 然後在 Microsoft Visual Basic for Applications 窗口中點擊「工具」>「引用」,在彈出的「References-Project1」對話框中,勾選「可用引用」列表框中的「Microsoft Excel Object Library」「Microsoft Scripting Runtime」選項,參見截圖:

doc print tasks by category 4

5. 然後,點擊「確定」按鈕,現在按 F5 鍵運行程式碼,完成程式碼後,不同類別的任務清單將在不同頁面上列印出來。

Outlook中的AI郵件助理:更聰明的回覆,更清晰的溝通(一鍵奇蹟!) 免費

使用Kutools for Outlook的AI郵件助理簡化您的日常Outlook任務。這個強大的工具會從您過去的郵件中學習,提供智能且準確的答覆,優化您的郵件內容,並幫助您輕鬆起草和潤色郵件。
doc ai email handle

此功能支援:

  • 智能回覆:根據您過去的對話獲得量身定制、精確且隨時可用的回覆。
  • 增強內容:自動優化您的郵件文字以提高清晰度和影響力。
  • 輕鬆撰寫:只需提供關鍵字,讓AI處理其餘部分,並有多種寫作風格可供選擇。
  • 智能擴展:通過上下文感知建議來拓展您的思路。
  • 摘要生成:即時獲取長郵件的簡潔概述。
  • 全球觸及:輕鬆將您的郵件翻譯成任何語言。

此功能支援:

  • 智能郵件回覆
  • 優化的內容
  • 基於關鍵字的草稿
  • 智能內容擴展
  • 郵件摘要生成
  • 多語言翻譯

最重要的是,此功能永遠完全免費不要再等待了——立即下載AI郵件助理並享受吧


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