如何在Outlook中基於類別打印任務?
假設您的Outlook任務中有多種顏色類別,現在,您希望基於不同頁面中的類別打印任務列表。 您如何在Outlook中解決這項工作?
手動一張一張地打印不同頁面中基於類別的任務
在Outlook中,您可以在不同頁面中逐一手動打印基於不同類別的任務,方法如下:
1。 啟動Outlook,然後轉到“任務”窗格並選擇要打印的任務文件夾,然後按 按Ctrl + E 激活 檢索 框,然後在 檢索 標籤,點擊 分類 圖標,然後選擇您需要打印的一種顏色類別,請參見屏幕截圖:
2。 然後,列出具有特定顏色類別的所有任務,請參見屏幕截圖:
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 窗口,彈出 參考-Project1 對話框,檢查 Microsoft Excel對像庫 和 Microsoft腳本運行時 來自的選項 可用參考 列錶框,請參見屏幕截圖:
5。 然後,單擊 OK 按鈕,現在,按 F5 鍵以運行此代碼,完成代碼後,具有不同類別的任務列表將被打印在不同的頁面上。
最佳辦公生產力工具
Kutools for Outlook - 超過 100 種強大的功能可增強您的 Outlook
🤖 人工智慧郵件助手: 具備人工智慧魔力的即時專業電子郵件——一鍵天才回覆、完美語調、多語言掌握。輕鬆改變電子郵件! ……
📧 電子郵件自動化: 外出(適用於 POP 和 IMAP) / 安排發送電子郵件 / 發送電子郵件時按規則自動抄送/密件副本 / 自動轉送(進階規則) / 自動添加問候語 / 自動將多收件者電子郵件拆分為單獨的訊息 ...
📨 電子郵件管理: 輕鬆回憶電子郵件 / 按主題和其他人阻止詐騙電子郵件 / 刪除重複的電子郵件 / 進階搜索 / 合併資料夾 ...
📁 附件專業版: 批量保存 / 批量分離 / 批量壓縮 / 自動保存 / 自動分離 / 自動壓縮 ...
🌟 介面魔法: 😊更多又漂亮又酷的表情符號 / 使用選項卡式視圖提高 Outlook 工作效率 / 最小化 Outlook 而不是關閉 ...
👍 一鍵奇蹟: 使用傳入附件回覆全部 / 反網路釣魚電子郵件 / 🕘顯示寄件者的時區 ...
👩🏼🤝👩🏻 通訊錄和行事曆: 從選定的電子郵件中大量新增聯絡人 / 將聯絡人群組拆分為各組 / 刪除生日提醒 ...
超過 100特點 等待您的探索! 按此處了解更多。