Когда вы создаете или изменяете встречу в календаре Outlook, Outlook автоматически проверяет наличие конфликтующих встреч. В настоящее время, если вы хотите проверить конфликты, вы можете использовать метод, представленный в этом п.ost.
Возможно, вы когда-нибудь видели текст «Конфликты с другой встречей» при создании или изменении встречи в 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. Один из нихost Существенными мерами предосторожности является периодическое резервное копирование. Кроме того, предлагается приготовить сильнодействующий специализированный Восстановление Outlook инструмент, как DataNumen Outlook Repair.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая восстановление мдф и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

