Outlookで特定の予定と競合する他のすべての予定をすばやく見つける方法

今すぐ共有:

Outlook カレンダーで予定を作成または変更すると、Outlook は自動的に競合する予定がないかを確認します。この時点で競合を確認したい場合は、この記事で紹介する方法を使用できます。

Outlookの予定を作成または変更するときに、「別の予定との競合」というテキストを見たことがあるかもしれません。 Outlookが競合を自動チェックできるためです。 ただし、Outlookは、デフォルトの機能によって競合をすばやく見つけるのに役立ちません。 したがって、ここでは、競合するすべての予定を検索する関数を生成する方法を説明します。

Outlookで特定の予定と競合する他のすべての予定をすばやく見つける

特定の予定と競合する他のすべての予定を調べる

  1. 最初に、Outlookプログラムを起動します。
  2. 次に、Outlookのメインウィンドウで、「Alt + F11」キーボタンを押します。
  3. すぐに、Outlook VBAエディターにアクセスします。このエディターでは、未使用のモジュールを開く必要があります。
  4. 次に、次のVBAコードをこのモジュールにコピーします。
Sub FindOutConflictingAppointments()
    Dim objAppointment As AppointmentItem
    Dim dStartTime, dEndTime As Date
    Dim strFilter As String
    Dim objAppointments As Items
    Dim objFoundAppointments As Items
    Dim objItem As AppointmentItem
    Dim i As Long
    Dim strConflicts As String
    Dim strMsg As String
 
    Select Case Application.ActiveWindow.Class
           Case olExplorer
                Set objAppointment = Application.ActiveExplorer.Selection(1)
           Case olInspector
                Set objAppointment = Application.ActiveInspector.CurrentItem
    End Select
 
    dStartTime = objAppointment.start
    dEndTime = objAppointment.End
 
    Set objAppointments = Application.ActiveExplorer.CurrentFolder.Items
 
    i = 1
 
    '1: Find all appts whose end time within the start and end time of source appt
    strFilter = "[End] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '2: Find all appts occurring within the start and end time of source appt
    strFilter = "[Start] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '3: Find all appts whose start time within the start and end time of source appt
    strFilter = "[Start] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [Start] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '4: Find all appts cover the entire source appt
    strFilter = "[Start] <= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] >= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
  
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    strMsg = i - 1 & " Conflicting Appointments:" & vbCrLf & vbCrLf & strConflicts
    MsgBox strMsg, vbInformation + vbOKOnly, "Check Conflicts"
End Sub

VBAコード-特定の予定と競合する他のすべての予定を見つける

  1. その後、現在のウィンドウを終了できます。
  2. 次に、通常どおり、このマクロをクイックアクセスツールバーに追加します。
  3. 後で、Outlookでマクロが有効になっていることも確認する必要があります。 「マクロ設定」に移動して確認してください。
  4. 最後に、試してみることができます。
  • まず、「別の予定との競合」プロンプトが表示される予定を選択または開きます。
  • 次に、クイックアクセスツールバーのマクロボタンをクリックします。
  • すぐに、次のスクリーンショットのように、競合するすべての予定を一覧表示するメッセージが表示されます。競合するすべての予定を一覧表示しているメッセージ

Outlookが破損する前の重要な注意事項

Outlookはクラッシュやエラーが発生しやすいことが知られています。そのため、Outlookの破損に備えておくことが不可欠です。最も重要な対策の一つは、定期的なバックアップです。さらに、強力な専用バックアップツールを用意しておくことをお勧めします。 Outlookの修復 のようなツール DataNumen Outlook Repair.

著者紹介:

Shirley Zhangは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 mdf回復 と見通し修理ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

今すぐ共有:

コメントは締め切りました。