Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как предотвратить слишком ранние или слишком поздние напоминания в Outlook?

Author Kelly Last modified

Например, вы работаете с 9:00 до 18:00 каждый день, но сейчас вы назначаете встречу на 10:00 и добавляете к ней напоминание за 2 часа в Outlook. Это означает, что напоминание сработает в 8:00 утра, до начала вашего рабочего дня. С другой стороны, напоминание может сработать даже в полночь в некоторых случаях. Это довольно неудобно, и некоторые пользователи Outlook могут захотеть избежать слишком ранних или слишком поздних напоминаний. Здесь я представлю вам макрос VBA для решения этой проблемы в Outlook.

Office Tab - Включите редактирование и просмотр с вкладками в Microsoft Office, делая работу проще
Разблокируйте Kutools для Outlook прямо сейчас и получите доступ к более чем 100 функциям без ограничений навсегда
Увеличьте возможности Outlook 2024 - 2010 или Outlook 365 с этими расширенными функциями. Наслаждайтесь более чем 100 мощными функциями и улучшите свой опыт работы с электронной почтой!

Чтобы предотвратить слишком ранние или слишком поздние напоминания в Outlook, вы можете сделать следующее:

Шаг 1: Нажмите клавиши Alt + F11 одновременно, чтобы открыть окно Microsoft Visual Basic for Applications.

Шаг 2: Разверните объекты Microsoft Outlook в левой панели и вставьте следующий макрос VBA в ThisOutlookSession.

VBA: Предотвращение слишком ранних или поздних напоминаний в Outlook

Public WithEvents g_CalendarItems As Outlook.Items
Public Sub Application_Startup()
Set g_CalendarItems = Outlook.Session.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub g_CalendarItems_ItemAdd(ByVal Item As Object)
CheckReminder Item
End Sub
Private Sub g_CalendarItems_ItemChange(ByVal Item As Object)
CheckReminder Item
End Sub
Sub CheckReminder(ByVal Item As Object)
On Error GoTo ProcError
Dim strProcName As String
strProcName = "CheckReminder"
reminderMaxHour = 20
reminderMinHour = 9
Dim aAptItem As Outlook.AppointmentItem
Set aAptItem = Item
If aAptItem.ReminderSet Then
Dim reminderDate As Date
reminderDate = aAptItem.Start - aAptItem.ReminderMinutesBeforeStart / (24 * 60)
reminderHour = (reminderDate - Int(reminderDate)) * 24
tolerance = 0.01 ' avoid floating point small diffs (little bit less than a min)
If reminderHour < reminderMinHour - tolerance Or reminderHour > reminderMaxHour + tolerance Then
' best guess, first try to advance to next minHour
reminderDateSuggestion = reminderDate + (reminderMinHour - reminderHour) / 24
' verify if first guess is valid
If reminderHour < reminderMinHour - tolerance And reminderDateSuggestion <= aAptItem.Start Then
' OK, first guess is valid, keep it
ElseIf reminderHour > reminderMaxHour Then
' go back to max hour (same day)
reminderDateSuggestion = reminderDate - (reminderHour - reminderMaxHour) / 24
Else
' go back to max hour (previous day)
reminderDateSuggestion = reminderDate - (reminderHour + 24 - reminderMaxHour) / 24
End If
rep = MsgBox("The Reminder time is out of specified working period. Would you like to change the Reminder time?" , vbQuestion + vbYesNoCancel)
If rep = vbCancel Then
aAptItem.Display
ElseIf rep = vbYes Then
aAptItem.ReminderMinutesBeforeStart = (aAptItem.Start - reminderDateSuggestion) * 24 * 60
aAptItem.Save
End If
End If
End If
ProcExit:
Exit Sub
ProcError:
MsgBox "Unanticipated error " & Err.Number & " " & Err.Description & vbCrLf & "In procedure: " & strProcName
End Sub

 

Примечание: Вы можете указать свой рабочий период, изменив следующие параметры в коде VBA выше:
reminderMaxHour = 20
reminderMinHour = 9

Шаг 3: Сохраните этот VBA-код и перезапустите Microsoft Outlook.

С этого момента, при создании встречи с временем напоминания вне указанного рабочего периода, появится диалоговое окно, которое напомнит вам об этом после того, как вы нажмете кнопку «Сохранить и закрыть».

the screenshot of step about preventing outlook reminding too early or too late

Если время напоминания раньше указанного reminderMinHour, нажмите «Да» в диалоговом окне — это изменит время напоминания и установит его на указанное время reminderMinHour.

Если время напоминания позже указанного reminderMaxHour, нажмите «Да» в диалоговом окне — это изменит время напоминания и напомнит вам в указанное время reminderMaxHour.

Примечание: Этот код VBA хорошо работает с Outlook 2013, но не работает с Outlook 2010 и 2007.


Лучшие инструменты для повышения продуктивности работы с Office

Срочные новости: бесплатная версия Kutools для Outlook уже доступна!

Оцените обновленный Kutools для Outlook с более чем100 невероятными функциями! Нажмите, чтобы скачать прямо сейчас!

🤖 Kutools AI : Использует передовые технологии искусственного интеллекта для легкой работы с Email — включая Ответ, Резюме, Оптимизацию, Расширение, Перевод и Составление писем.

📧 Автоматизация Email: Автоответчик (Доступно для POP и IMAP) / Запланировать отправку писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (Расширенное правило) / Автоматически добавить приветствие / Авторазделение Email с несколькими получателями на отдельные письма ...

📨 Управление Email: Отозвать письмо / Блокировать вредоносные письма по теме и другим критериям / Удалить дубликаты / Расширенный Поиск / Организовать папки ...

📁 Вложения Pro: Пакетное сохранение / Пакетное открепление / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие ...

🌟 Волшебство интерфейса: 😊Больше красивых и стильных эмодзи / Напоминание при поступлении важных писем / Свернуть Outlook вместо закрытия ...

👍 Удобные функции одним кликом: Ответить всем с вложениями / Антифишинговая Email / 🕘Показать часовой пояс отправителя ...

👩🏼‍🤝‍👩🏻 Контакты и Календарь: Пакетное добавление контактов из выбранных Email / Разделить группу контактов на отдельные / Удалить напоминание о дне рождения ...

Используйте Kutools на вашем языке – поддерживаются Английский, Испанский, Немецкий, Французский, Китайский и более40 других!

Мгновенно активируйте Kutools для Outlook одним кликом. Не ждите – скачайте и улучшите свою эффективность прямо сейчас!

kutools for outlook features1 kutools for outlook features2

🚀 Скачайте все дополнения Office одним кликом

Рекомендуем: Kutools для Office (5-в-1)

Скачайте сразу пять установщиков одним кликом — Kutools для Excel, Outlook, Word, PowerPoint и Office Tab Pro. Нажмите, чтобы скачать прямо сейчас!

  • Все просто: скачайте все пять установочных пакетов одним действием.
  • 🚀 Готово для любой задачи Office: Установите нужные дополнения тогда, когда они вам понадобятся.
  • 🧰 Включено: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools для PowerPoint