2 cách để in danh sách tác vụ Outlook với các danh mục khác nhau trên các trang khác nhau

Chia sẻ ngay bây giờ:

Nếu bạn đã gán nhiều danh mục màu khác nhau cho các tác vụ Outlook của mình và bây giờ muốn in danh sách các tác vụ với các danh mục khác nhau trên các trang khác nhau, bạn có thể tham khảo bài viết này. Ở đây chúng tôi sẽ chia sẻ cho bạn 2 phương pháp để có được nó.

Để phân loại và quản lý tốt công việc của mình, có lẽ bạn đã áp dụng các phân loại màu sắc cho công việc của mình. Bây giờ, nếu bạn muốn in danh sách nhiệm vụ của mình với các danh mục khác nhau trên các trang khác nhau, vui lòng đọc tiếp. Sau đây chúng tôi sẽ giới thiệu cho bạn 2 cách để có được nó.

Phương pháp 1: In thủ công từng danh sách nhiệm vụ

  1. Trước hết, trong Outlook, hãy truy cập vào khung “Nhiệm vụ”.
  2. Sau đó, mở một thư mục Tác vụ.
  3. Tiếp theo, nhấn “Ctrl + E” để kích hoạt dải băng “Tìm kiếm”.
  4. Sau đó, trên tab “Tìm kiếm”, nhấp vào nút “Phân loại”.
  5. Từ danh sách thả xuống, chọn một danh mục màu.Tìm kiếm theo danh mục
  6. Sau đó, chỉ những nhiệm vụ thuộc danh mục đã chọn mới được giữ lại trong danh sách.Chỉ còn lại các nhiệm vụ có danh mục màu cụ thể
  7. Bây giờ, hãy vào “Tệp” > “In” để in danh sách nhiệm vụ này.In các nhiệm vụ tìm thấy trong danh sách
  8. Sau đó, theo cách tương tự, in ra từng danh sách nhiệm vụ với các danh mục màu khác theo cách thủ công.

Cách 2: In danh sách tác vụ hàng loạt bằng VBA

  1. Ngay từ đầu, hãy kích hoạt trình soạn thảo VBA theo “Cách chạy mã VBA trong Outlook của bạn".
  2. Sau đó, thêm tham chiếu đến “Thư viện đối tượng MS Excel” theo hướng dẫn trong “Cách thêm tham chiếu thư viện đối tượng trong VBA".
  3. Tiếp theo, sao chép mã VBA sau vào một mô-đun.
Sub PrintTaskList_SpecificColorCategory()
    Dim objTasks As Outlook.Items
    Dim objTask As Outlook.TaskItem
    Dim objDictionary As Object
    Dim arrCategory As Variant
    Dim varCategory As Variant
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkbook As Excel.Workbook
    Dim objExcelWorksheet As Excel.Worksheet
    Dim varKey As Variant
    Dim strKey As String
    Dim i As Long
    Dim bSheetFound As Boolean
    Dim nLastRow As Integer
    Dim objSheet As Excel.Worksheet
 
    Set objTasks = Application.Session.GetDefaultFolder(olFolderTasks).Items
    Set objDictionary = CreateObject("Scripting.Dictionary")
 
     'Get All Tasks' Categories
    For Each objTask In objTasks
        arrCategory = Split(objTask.Categories, ",")
        For Each varCategory In arrCategory
            If objDictionary.Exists(Trim(varCategory)) = False Then
               objDictionary.Add Trim(varCategory), 0
            End If
        Next
    Next
 
    'Export the Tasks with Different Categories into Different Sheet in an Excel Workbook
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    objExcelApp.Visible = True
 
    i = 0
    For Each varKey In objDictionary.Keys
        strKey = CStr(varKey)

        On Error Resume Next
        objExcelWorkbook.Sheets(strKey).Select
        bSheetFound = (Err = 0)
        On Error GoTo 0
        If bSheetFound = False Then
           i = i + 1
           If i < 4 Then
              Set objExcelWorksheet = objExcelWorkbook.Sheets(i)
           Else
              Set objExcelWorksheet = objExcelWorkbook.Sheets.Add(After:=objExcelWorkbook.Sheets(objExcelWorkbook.Sheets.Count))
           End If
           objExcelWorksheet.Name = strKey
        End If
 
        With objExcelWorksheet
             .Cells(1, 1) = strKey
             .Cells(1, 1).Font.Bold = True
             .Cells(1, 1).Font.Size = 18
             .Cells(2, 1) = "Subject"
             .Cells(2, 1).Font.Bold = True
             .Cells(2, 2) = "Start Date"
             .Cells(2, 2).Font.Bold = True
             .Cells(2, 3) = "Due Date"
             .Cells(2, 3).Font.Bold = True
        End With
 
        For Each objTask In objTasks
            If InStr(objTask.Categories, strKey) > 0 Then
               nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
               With objExcelWorksheet
                    .Range("A" & nLastRow) = objTask.Subject
                    .Range("B" & nLastRow) = objTask.startDate
                    .Range("C" & nLastRow) = objTask.DueDate
               End With
            End If
        Next
 
        objExcelWorksheet.Columns("A:C").AutoFit
    Next
 
    'Print out All Sheets in this Excel Workbook
    For Each objSheet In objExcelWorkbook.Sheets
        objSheet.PrintOut
    Next
 
    objExcelWorkbook.Close False
    objExcelApp.Quit
End Sub

Mã VBA - In danh sách tác vụ Outlook với các danh mục khác nhau trong các trang khác nhau

  1. Sau đó, nhấn nút phím “F5” để chạy macro này ngay lập tức.
  2. Khi macro kết thúc, danh sách tác vụ với các danh mục khác nhau sẽ được in trên các trang khác nhau, như minh họa trong ảnh chụp màn hình sau.Danh sách nhiệm vụ được in

Lấy lại dữ liệu có giá trị từ tệp PST bị xâm phạm

Nếu bạn gặp vấn đề với tệp PST không thể truy cập được, bước tiếp theo của bạn chắc chắn là PST sửa chữa. Trong trường hợp này, trước tiên bạn có thể thử công cụ sửa chữa hộp thư đến. Với điều kiện là nó không thành công, bạn có thể tiến hành thử một công cụ bên ngoài khác, chẳng hạn như DataNumen Outlook Repair. Nó có thể khôi phục dữ liệu PST trong thời gian nhanh chóng.

Giới thiệu tác giả:

Shirley Zhang là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm phục hồi mdf và các sản phẩm phần mềm sửa chữa triển vọng. Để biết thêm thông tin, hãy truy cập www.datanumennăm

Chia sẻ ngay bây giờ:

Được đóng lại.