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