Bỏ qua nội dung chính

Outlook: Cách xóa các mục lịch trùng lặp

Đôi khi, có một số mục lịch trùng lặp khi chúng tôi nhập sự kiện từ các thiết bị khác. Để loại bỏ các mục lịch trùng lặp, hướng dẫn này giới thiệu hai phương pháp khác nhau, một là loại bỏ từng mục một khi các mục trùng lặp ít hơn, một phương pháp khác là sử dụng VBA để loại bỏ tất cả các mục trùng lặp cùng một lúc.

Xóa từng mục lịch trùng lặp theo cách thủ công

VBA để xóa các mục lịch trùng lặp cùng một lúc

Tab Office - Cho phép chỉnh sửa và duyệt theo tab trong Microsoft Office, giúp công việc trở nên dễ dàng
Kutools for Outlook - Tăng cường Outlook với hơn 100 tính năng nâng cao để đạt hiệu quả vượt trội
Tăng cường Outlook 2021 - 2010 hoặc Outlook 365 của bạn với các tính năng nâng cao này. Tận hưởng bản dùng thử miễn phí toàn diện trong 60 ngày và nâng cao trải nghiệm email của bạn!

Xóa từng mục lịch trùng lặp theo cách thủ công

 

Để xóa từng mục lịch trùng lặp, bạn cần liệt kê chúng theo một thứ tự cụ thể để xem các mục trùng lặp trước tiên một cách rõ ràng, sau đó xóa từng mục một.

1. Nói chung, lịch ở Xem Lịch xem, kích hoạt lịch bạn muốn xóa trùng lặp, sau đó nhấp vào Xem > Thay đổi góc nhìn > Danh sách.

doc xóa các mục lịch trùng lặp 1

Bây giờ lịch đã được xem như một danh sách.

doc xóa các mục lịch trùng lặp 1

doc xóa các mục lịch trùng lặp 1

2. Sau đó chỉ định một điều kiện mà bạn sử dụng để so sánh xem các mục có trùng lặp hay không, giả sử để so sánh nếu các mục có cùng chủ đề. Nhấp chuột ĐỐI TƯỢNG trong danh sách lịch, sau đó tất cả các mục có cùng chủ đề được đặt cùng nhau.

doc xóa các mục lịch trùng lặp 1

3. Bây giờ bạn có thể xóa từng mục có cùng chủ đề bằng cách nhấp chuột phải vào mục đó và nhấp vào Xóa bỏ từ menu ngữ cảnh bật lên.

doc xóa các mục lịch trùng lặp 1


VBA để xóa các mục lịch trùng lặp cùng một lúc

 

Ở đây giới thiệu một số VBA có thể loại bỏ tất cả các mục lịch trùng lặp trong thư mục lịch trong các trường hợp khác nhau.

1. nhấn Khác + F11 phím để kích hoạt Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. nhấp chuột Chèn > Mô-đun để tạo một mô-đun trống mới, sau đó sao chép và dán mã bên dưới vào mô-đun.

VBA: loại bỏ tất cả các mục lịch trùng lặp trong một danh mục cụ thể

'Sub RemoveDuplicateCalendar()
'UpdatebyExtendoffice20220413
  Dim xStores As Stores
  Dim xStore As Store
  Dim xRootFolder As Folder
  Dim xFolder As Object
  Set xStores = Application.Session.Stores
  For Each xStore In xStores
    Set xRootFolder = xStore.GetRootFolder
    For Each xFolder In xRootFolder.Folders
      Call ProcessFolders(xFolder)
    Next
  Next
  Set xStores = Nothing
End Sub

Sub ProcessFolders(ByVal CurrentFld As Folder)
  Dim xDictionary As Object
  Dim i As Long
  Dim xItem As Object
  Dim xKey As String
  Dim xSubFld As Folder
  On Error Resume Next
  If CurrentFld.DefaultItemType <> olAppointmentItem Then Exit Sub
  Set xDictionary = CreateObject("Scripting.Dictionary")
  For i = CurrentFld.Items.Count To 1 Step -1
    Set xItem = CurrentFld.Items.Item(i)
    'change categories as you need in below script
    If xItem.Categories = "date" Then
    'change the comparing items as you need
      xKey = xItem.Subject & xItem.Location & xItem.Body & xItem.Categories
      If xDictionary.Exists(xKey) = True Then
        xItem.Delete
      Else
        xDictionary.Add xKey, True
      End If
    End If
  Next i
  For Each xSubFld In CurrentFld.Folders
    ProcessFolders xSubFld
  Next
End Sub

Trong VBA này, nó sẽ xóa tất cả các bản sao trong “ngày”Danh mục này bằng cách so sánh chủ đề, vị trí, nội dung và danh mục, bạn có thể thay đổi chúng khi cần.

doc xóa các mục lịch trùng lặp 1

3. sau đó nhấn F5 hoặc nhấp vào Chạy để chạy mã, một hộp thoại Macros bật ra, chọn Loại bỏ Lịch trùng lặp và nhấp chạy doc xóa các mục lịch trùng lặp 1 .

doc xóa các mục lịch trùng lặp 1

Sau đó, các mục trùng lặp trong danh mục "ngày tháng" đã được loại bỏ.

VBA: loại bỏ tất cả các mục lịch trùng lặp trên các danh mục

Sub RemoveDuplicateCalendar()
'UpdatebyExtendoffice20220413
  Dim xStores As Stores
  Dim xStore As Store
  Dim xRootFolder As Folder
  Dim xFolder As Object
  Set xStores = Application.Session.Stores
  For Each xStore In xStores
    Set xRootFolder = xStore.GetRootFolder
    For Each xFolder In xRootFolder.Folders
      Call ProcessFolders(xFolder)
    Next
  Next
  Set xStores = Nothing
End Sub

Sub ProcessFolders(ByVal CurrentFld As Folder)
  Dim xDictionary As Object
  Dim i As Long
  Dim xItem As Object
  Dim xKey As String
  Dim xSubFld As Folder
  On Error Resume Next
  If CurrentFld.DefaultItemType <> olAppointmentItem Then Exit Sub
  Set xDictionary = CreateObject("Scripting.Dictionary")
  For i = CurrentFld.Items.Count To 1 Step -1
    Set xItem = CurrentFld.Items.Item(i)
    'change the comparing items as you need
      xKey = xItem.Subject & xItem.Location & xItem.Body & xItem.Categories
      If xDictionary.Exists(xKey) = True Then
        xItem.Delete
      Else
        xDictionary.Add xKey, True
      End If
  Next i
  For Each xSubFld In CurrentFld.Folders
    ProcessFolders xSubFld
  Next
End Sub

Chạy mã này, tất cả các bản sao có cùng chủ đề, vị trí, nội dung, danh mục trong mỗi danh mục đã được loại bỏ.

doc xóa các mục lịch trùng lặp 1

doc xóa các mục lịch trùng lặp 1

Chú thích: VBA trên hoạt động trong thư mục lịch bao gồm thư mục con.


Công cụ năng suất văn phòng tốt nhất

Kutools cho Outlook - Hơn 100 tính năng mạnh mẽ để tăng cường Outlook của bạn

🤖 Trợ lý thư AI: Email chuyên nghiệp tức thì với phép thuật AI--một cú nhấp chuột để có câu trả lời xuất sắc, giọng điệu hoàn hảo, khả năng thông thạo đa ngôn ngữ. Chuyển đổi email một cách dễ dàng! ...

📧 Tự động hoá email: Vắng Mặt (Có sẵn cho POP và IMAP)  /  Lên lịch gửi email  /  Tự động CC/BCC theo quy định khi gửi Email  /  Tự động chuyển tiếp (Quy tắc nâng cao)   /  Tự động thêm lời chào   /  Tự động chia email nhiều người nhận thành các tin nhắn riêng lẻ hữu ích. Cảm ơn !

📨 Quản lý email: Dễ dàng thu hồi email  /  Chặn email lừa đảo theo chủ đề và những người khác  /  Xóa các email trùng lặp  /  Tìm Kiếm Nâng Cao  /  Hợp nhất các thư mục hữu ích. Cảm ơn !

📁 Tệp đính kèm chuyên nghiệpLưu hàng loạt  /  Tách hàng loạt  /  Nén hàng loạt  /  Tự động lưu   /  Tự động tách  /  Tự động nén hữu ích. Cảm ơn !

🌟 Giao diện ma thuật: 😊Thêm nhiều biểu tượng cảm xúc đẹp và thú vị hơn   /  Tăng năng suất Outlook của bạn với chế độ xem theo thẻ  /  Thu nhỏ Outlook thay vì đóng hữu ích. Cảm ơn !

👍 Kỳ quan chỉ bằng một cú nhấp chuột: Trả lời tất cả bằng tệp đính kèm đến  /   Email chống lừa đảo  /  🕘Hiển thị múi giờ của người gửi hữu ích. Cảm ơn !

👩🏼‍🤝‍👩🏻 Danh bạ & Lịch: Thêm hàng loạt liên hệ từ các email đã chọn  /  Chia nhóm liên hệ thành các nhóm riêng lẻ  /  Xóa lời nhắc sinh nhật hữu ích. Cảm ơn !

Trên 100 tính năng Chờ đợi sự khám phá của bạn! Bấm vào đây để khám phá thêm.

 

 

Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Sadly neither of these work
This comment was minimized by the moderator on the site
I have tested the code and both of them work, What is your problem?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations