Как предотвратить напоминание Outlook слишком рано или слишком поздно?
Например, вы работаете с 9:00 до 6:00 каждый день, но теперь вы назначаете встречу в 10:00 и добавляете напоминание на 2 часа в Outlook. Это означает, что напоминание сработает в 8:00 до начала вашей работы. С другой стороны, напоминание может звучать в полночь в особых случаях. Это довольно неудобно, и некоторые пользователи Outlook могут захотеть предотвратить слишком раннее или слишком позднее напоминание Outlook. Здесь я представлю вам макрос VBA, который поможет вам решить эту проблему в Outlook.
- Автоматизируйте отправку писем с помощью Авто CC / BCC, Автопересылка по правилам; отправлять Автоответчик (Нет на работе) без необходимости использования сервера обмена...
- Получайте напоминания, например Предупреждение BCC при ответе всем, пока вы находитесь в списке скрытых копий, и Напоминать об отсутствии вложений за забытые вложения...
- Повысьте эффективность электронной почты с помощью Ответить (всем) с вложениями, Автоматическое добавление приветствия или даты и времени в подпись или тему, Ответить на несколько писем...
- Оптимизируйте электронную почту с помощью Отозвать электронные письма, Инструменты для вложения (Сжать все, Автосохранить все...), Удалить дубликатыи Быстрый отчет...
Чтобы Outlook не напомнил слишком рано или поздно, вы можете сделать следующее:
Шаг 1: нажмите другой + F11 тем временем клавиши, чтобы открыть окно Microsoft Visual Basic для приложений.
Шаг 2: разверните Объекты Microsoft Outlook на левой панели и вставьте следующий макрос VBA в Эта сессия Outlook.
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 выше:
НапоминаниеMaxHour = 20
НапоминаниеMinHour = 9
Шаг 3: Сохраните этот VBA и перезапустите Microsoft Outlook.
С этого момента, когда вы создаете встречу с напоминанием, когда вы указываете рабочий период, появится диалоговое окно, напоминающее вам, после того, как вы нажмете кнопку Сохранить и закрыть .
Если время напоминания раньше указанного времени напоминания MinHour, нажмите кнопку Да в диалоговом окне он изменит время напоминания и подаст звуковой сигнал напоминания в указанное время напоминания.
Если время напоминания позже, чем указанное время напоминания MaxHour, щелкните Да в диалоговом окне он изменит время напоминания и напомнит вам в указанное время напоминанияMaxHour.
Примечание: Этот код VBA хорошо работает с Outlook 2013, но не работает с Outlook 2010 и 2007.
Лучшие инструменты для офисной работы
Kutools for Outlook - Более 100 мощных функций для улучшения вашего Outlook
🤖 Почтовый помощник с искусственным интеллектом: Мгновенные профессиональные электронные письма с помощью магии искусственного интеллекта: гениальные ответы одним щелчком мыши, идеальный тон, многоязычное владение. Преобразуйте электронную почту без особых усилий! ...
???? Автоматизация электронной почты: Нет на месте (доступно для POP и IMAP) / Расписание отправки писем / Автоматическое копирование/скрытая копия по правилам при отправке электронной почты / Автопересылка (расширенные правила) / Автоматическое добавление приветствия / Автоматически разделять электронные письма от нескольких получателей на отдельные сообщения ...
📨 Управление электронной почтой: Легко вспоминать электронные письма / Блокировка мошеннических писем от субъектов и других лиц / Удалить повторяющиеся электронные письма / Поиск / Объединение папок ...
📁 Вложения Pro: Пакетное сохранение / Пакетное отсоединение / Пакетное сжатие / Автосохранение / Авто отсоединение / Автоматическое сжатие ...
???? Магия интерфейса: 😊Больше красивых и крутых смайлов / Повысьте производительность Outlook с помощью представлений с вкладками / Свернуть Outlook вместо закрытия ...
???? Чудеса в один клик: Ответить всем с входящими вложениями / Антифишинговые письма / 🕘Показать часовой пояс отправителя ...
👩🏼🤝👩🏻 Контакты и календарь: Пакетное добавление контактов из выбранных писем / Разделить группу контактов на отдельные группы / Удалить напоминания о днях рождения ...
Более Особенности 100 Ждем вашего исследования! Нажмите здесь, чтобы узнать больше.