Я использую Microsoft Outlook 2016 Home.
У меня есть международные клиенты, которые ожидают быстрого ответа на электронные письма, которые они мне отправляют. Чтобы немного поспать, я хотел бы настроить автоматический ответ "Вне офиса" в Outlook для всех входящих писем с 22:00 до 08:00 по местному времени.
Я понял, что мне нужно применить сценарий для достижения этой цели. Я нашел этот скрипт, который отправляет автоответ в дневное время для писем, полученных до 15:00. Этот скрипт работает как брелок, поэтому я попытался изменить его на работу в ночное время для писем, полученных с 22:00 до 08:00.
Оригинальный скрипт здесь: Как настроить Outlook для отправки автоответчика в течение определенного часа дня каждый день?
Мой измененный сценарий здесь:
Public Sub Check_ReceivedTime(newMail As Outlook.MailItem)
Dim obj As Object
Dim ReceivedHour As Integer
Dim newReply As MailItem
Dim msg As String
ReceivedHour = Hour(newMail.ReceivedTime)
If ReceivedHour >= 22 OR ReceivedHour < 8 Then
Set newReply = newMail.reply
msg = "This is the email body text..."
CreateMail newReply.To, msg
Else
Debug.Print "During office hours. Do not sent the automated reply."
End If
Set newReply = Nothing
End Sub
Private Sub CreateMail(ReplyAddress As String, msg As String)
Dim objMail As Outlook.MailItem
Set objMail = CreateItem(olMailItem)
With objMail
.To = ReplyAddress
.Body = msg
.Display
' or
' .Send
End With
End Sub
Я подозреваю, что может быть проблема с 12/24 часовым форматом, возможно, но я не могу исправить это самостоятельно. Кто-нибудь может мне помочь?