Outlook 캘린더에서 약속을 만들거나 변경하면 Outlook은 자동으로 충돌하는 약속이 있는지 확인합니다. 이때 충돌 여부를 직접 확인하려면 이 글에서 소개한 방법을 사용할 수 있습니다.
Outlook 약속을 만들거나 변경할 때 "다른 약속과 충돌"텍스트를 본 적이있을 것입니다. Outlook이 충돌을 자동으로 확인할 수 있기 때문입니다. 그러나 Outlook은 기본 기능으로 충돌을 빠르게 찾는 데 도움이되지 않습니다. 따라서 여기서는 충돌하는 모든 약속을 검색하는 함수를 생성하는 방법을 알려 드리겠습니다.
특정 약속과 충돌하는 다른 모든 약속 찾기
- 처음에 Outlook 프로그램을 시작하십시오.
- 그런 다음 Outlook 주 창에서 "Alt + F11"키 버튼을 누릅니다.
- 즉시 사용하지 않는 모듈을 열어야하는 Outlook VBA 편집기에 액세스합니다.
- 다음으로 다음 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
- 그 후에 현재 창을 종료 할 수 있습니다.
- 그런 다음 평소와 같이이 매크로를 빠른 실행 도구 모음에 추가합니다.
- 나중에 Outlook에서 매크로가 활성화되어 있는지도 확인해야합니다. "매크로 설정"으로 이동하여 확인하십시오.
- 마지막으로 시도해 볼 수 있습니다.
- 먼저 "다른 약속과 충돌"프롬프트가있는 약속을 선택하거나 엽니 다.
- 그런 다음 빠른 실행 도구 모음에서 매크로 버튼을 클릭합니다.
- 즉시 다음 스크린 샷과 같이 충돌하는 모든 약속을 나열하는 메시지가 표시됩니다.
Outlook 손상 전 필수 예방 조치
Outlook은 충돌 및 오류가 발생하기 쉽다는 것이 잘 알려져 있습니다. 따라서 Outlook 손상에 대비하는 것이 필수적입니다. 가장 중요한 예방 조치 중 하나는 주기적인 백업입니다. 또한 강력한 전문 백업 시스템을 준비하는 것이 좋습니다. Outlook 수리 도구, 같은 DataNumen Outlook Repair.
저자 소개 :
Shirley Zhang은 데이터 복구 전문가입니다. DataNumen, Inc.는 다음과 같은 데이터 복구 기술 분야의 세계적 리더입니다. mdf 복구 및 전망 수리 소프트웨어 제품. 자세한 내용은 WWW.datanumen.COM


