两种快速删除 Outlook 日历中重复假期的方法

立即分享:

如果您不小心将相同的假期添加到同一日历两次或更多次,您会发现日历中塞满了重复的假期。 在这种情况下,您必须希望删除重复项。 现在,本文将教您 2 种方法。

Outlook 有一个内置功能,可以快速将假期添加到默认日历中。 毫无疑问,这对用户来说非常方便。 但是,如果您错误地添加了两次或更多次假期,您的默认日历将被重复的假期填满。 现在,在下文中,我们将向您介绍两种快速删除重复项的方法。

快速删除 Outlook 日历中的重复假期

方法 1:删除所有假期并重新添加

  1. 首先,启动 Outlook 程序。
  2. 然后访问源日历文件夹。
  3. 接下来切换到“视图”选项卡并选择“更改视图”>“列表”。将日历视图更改为列表视图
  4. 之后,您应该单击“安排”组中的“类别”按钮。
  5. 接下来,您会看到所有约会都已按类别分组。
  6. 现在您可以找到“假日”组。
  7. 最后,单击“假期”组标题,然后按“删除”键。按类别分组并删除所有假期
  8. 立刻,所有现有的假期都被删除了。
  9. 删除它们后,您可以重新添加假期。 首先,转到“文件”>“选项”。
  10. 在弹出的“Outlook 选项”窗口中,您可以切换到“日历”选项卡。
  11. 在此选项卡下,您将能够找到“添加假期”按钮。
  12. 然后,在新对话框中,选择一个位置,例如“美国”,然后单击“确定”。重新添加假期
  13. 最终,假期再次导入到默认日历中。

方法 2:使用 VBA 删除重复的假期

  1. 首先,按“Alt + F11”键按钮。
  2. 接下来,您将访问 Outlook VBA 编辑器窗口,您可以在其中打开未使用的模块。
  3. 随后,将以下 VBA 代码复制到此模块中。
Sub RemoveDuplicateHolidays()
    Dim objStores As Outlook.Stores
    Dim objStore As Outlook.Store
    Dim objPSTFile As Outlook.Folder
    Dim objFolders As Outlook.folders
    Dim objFolder As Object

    Set objStores = Outlook.Application.Session.Stores
 
    'Process all Outlook PST files in your Outlook
    For Each objStore In objStores
        Set objPSTFile = objStore.GetRootFolder
        For Each objFolder In objPSTFile.folders
            Call ProcessFolders(objFolder)
        Next
    Next

End Sub

Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
    Dim objDictionary As Object
    Dim i As Long
    Dim objItem As Object
    Dim strKey As String

    Set objDictionary = CreateObject("Scripting.Dictionary")

    If objCurrentFolder.DefaultItemType = olAppointmentItem Then
       For i = objCurrentFolder.Items.count To 1 Step -1
           Set objItem = objCurrentFolder.Items.Item(i)
 
           'Get all holidays based on the "Holiday" category
           If objItem.Categories = "Holiday" Then
              strKey = objItem.Subject & "," & objItem.Location & "," & objItem.Body & "," & objItem.Categories
              strKey = Replace(strKey, ", ", Chr(32))

              If objDictionary.Exists(strKey) = True Then
                 objItem.Delete
              Else
                 objDictionary.Add strKey, True
              End If
          End If
       Next i
    End If
End Sub

VBA 代码 - 快速删除 Outlook 日历中的重复假期

  1. 最后,你可以试试这个宏。
  • 单击进入“RemoveDuplicateHolidays”子例程。
  • 然后按 F5 键按钮运行它。
  • 完成后,所有 Outlook 日历中的所有重复假期都将被删除。

检索有价值的 Outlook 数据

一个毋庸置疑的事实是,没有任何程序可以保证它不会出现错误和损坏。 这同样适用于 Outlook。 因此,为了保护您的Outlook数据,您最好定期进行数据备份。 此外,您需要提前安排 Outlook 恢复计划。 最后但同样重要的是,准备一个信誉良好的修复工具是谨慎的,例如 DataNumen Outlook Repair。 它能够 修复 Outlook 快速解决问题并从受损文件中取回最大的 Outlook 数据。

作者简介:

Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 恢复 Sql Server 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com

立即分享:

评论被关闭。